home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Merciful 1
/
Merciful - Disc 1.iso
/
software
/
l
/
lsd_docs_disks
/
lsddoc'sdisk61.dms
/
lsddoc'sdisk61.adf
/
DosMan.txt.001
/
DosMan.txt.001
Wrap
Text File
|
1992-10-23
|
153KB
|
4,489 lines
The Full Manual To The Amiga`s DOS Commands
AddBuffers(V1.3,2.x,3.x in C:)
PaRt OnE
NAME
AddBuffers - Increase the sector cache for system
disk drives.
SYNOPSIS
AddBuffers DRIVE/A BUFFERS/A D2 B2 D3 B3 D4 B4
DESCRIPTION
This command increases the number of disk buffers
used by the system for disk drive access. By increasing
the number of buffers, you can reduce disk access time at
the cost of losing memory to the sector cache (exactly
512 kilo-bytes per buffer). The buffers specified are
used for a specific drive, and do not affect the
performance of the other drives in the system.
Commodore recommends not using more than 25-30
buffers with the standard filesystem, because more than
this does not improve system performance by much. With
the new FastFileSystem (and a hard drive), more buffers
may increase performance, so more than 30 may be used to
good effect if you have the memory.
Starting with version 1.3 of AddBuffers allows you to
set buffers for up to four disk drives with a single
command line.
The default number of buffers are 5 for floppy and 30
for hard drives.
Those formatting using the Fast File System (2.x and
above) will always benefit from more disk buffers. More
likely than not, the buffers are allocated during the
partitioning, and it is stored in the Rigid Disk Blocks
(RDB).
With buffer space more information will be read from
the disk into memory, thereby making disk searches and
transfers much quicker. So, you are sacrificing memory
for programs in exchange for quicker disk access.
For 2.x and 3.x ONLY: You can use this command to
find out how many buffers are assigned to a drive. You
can also subtract buffers to free up some memory.
EXAMPLE
1. To add 15 buffers to the sector cache for drive df0
do:
AddBuffers DF0: 15
2. To add 10 more buffers to df0:, and 20 to hard drive
dh0:
AddBuffers DF0: 10 dh0: 20
For 2.x and 3.x ONLY:
3. To subtract 10 buffers from df0:, and 20 to hard
drive dh0:
AddBuffers DF0: -10 dh0: -20
4. To Return the numbers of buffers assigned to df0:
AddBuffers DF0:
AddDataTypes (3.x Only in C:)
NAME
AddDataTypes - Adds additional data types after
booting.
SYNOPSIS
AddDataTypes {files} [Quiet] [Refresh]
DESCRIPTION
This command is used to support the object oriented
Data Type process used by MultiView. All data files that
are processed by multiview are passed to system-standard
libraries for that kind of data (for instance, a .gif is
sent to a system-standard library that is coded for
.gif). In order to be passed to a system-standard library
(all of which are located in L: directory). If a library
is added after boot-time, it can be used immediatly with
the help of this command. This save you the hassle from
having to reboot after adding new datatypes.
EXAMPLES
1. To add a gif displayer for multiview
AddDataTypes sys:Devs/Datatypes/GIF
2. To add a gif datatype without printing any output
to the screen (useful in writing scripts)
AddDataTypes sys:Devs/Datatypes/GIF Quiet
3. To scan the DEVS:DataTypes for new or updated
entries
AddDataTypes AddDataTypes Refresh
Alias (1.x,2.x,3.x Internal Command)
NAME
Alias - Create short names for longer command
strings.
SYNOPSIS
Alias [alias [string] ]
DESCRIPTION
This command lets you make short names (aliases) for
longer command strings. When a word is typed on the CLI,
AmigaDOS will subsitute a longer string for it. This
longer string may also contain arguments as well as
commands. It can also display a list of alias
assignments.
For an alias to become global it MUST be entered in
the s:shell-startup script. Otherwise, it can only be
used by the shell that created it or through the NewCLI
command called from the same shell it was created.
EXAMPLES
1. To shorten the Delete command to DL
Alias DL Delete
2. To copy df0: to df1: using cop
Alias cop Sys:System/Diskcopy df0: to df1:
3. To copy an entire directory (empty or not)
Alias cp copy [] ALL
(When you type cp directory
it gets expanded to:
copy directory All
Ask(V1.3 in C:) (v 2.x & 3.x internal)
NAME
Ask - Query user interactively.
SYNOPSIS
Ask Prompt WARN OK TIMEOUT
DESCRIPTION
Ask is a program that allows you to get a simple form
of input from a user. It is most useful in Execute
scripts.
You may specify a Prompt string, which will be
displayed to the user, and you may also specify a string
to match on for both YES and NO responses, as well as
specifying a time limit on the users response in seconds.
All of these strings have default values, the default for
the WARN string is 'Y', the default for the OK string is
'N', and the default for the Prompt is a single question
mark.
If the user enters a string which matches the WARN
string, Ask will exit with a return code that will cause
an IF WARN statement to succeed. If the user enters a
string which matches the OK string, exceeds the value
given in TIMEOUT, or simply hits RETURN then Ask will
exit with a ZERO return, suitable for the ELSE portion of
such an IF statement.
More simply: A 'yes' returns a 5. A 'no' returns a 0.
If the user enters a string other than those
specified in WARN and OK, then ASK will redisplay the
prompt, urging the user to give a better answer.
EXAMPLE
Here is an example of an Ask command which will
return a WARNING if the user types "Amiga", and an OK if
the user types "BigBlue", or waits longer than 10 seconds
to respond:
Ask "Amiga or BigBlue?" "Amiga" "BigBlue" Timeout 10
IF WARN ; typed amiga!
Echo "Obviously a person of quality"
ELSE ; typed big blue? or couldn't decide
Echo "You seem to be misguided"
ENDIF
Assign(V1.3, 2.x, 3.x in C:)
NAME
Assign - Binds a device name to a directory or file.
SYNOPSIS
1.3
Assign Name Dir Etc/... LIST EXISTS REMOVE
2.x/3.x
Assign Name Dir Etc/... LIST EXISTS DISMOUNT
DEFER PATH ADD REMOVE VOLS DIRS DEVICES
DESCRIPTION
Assign causes NAME: to be a synonym for a directory
or a pathname. This is referred to as a "logical"
device, since it appears to the Amiga and the user as a
device, but is in fact a directory. You can use this as a
convenient shorthand to refer to lengthy pathnames, or to
refer to a variety of different directories by the same
name (just change the assignment when you want the
program to change directories).
You can remove assignments by giving only NAME:, or
by giving a single minus ('-') as the directory or device
name. There are also specifice keywords to remove
assigns which will be covered later. In any case, all
assigns are lost when the system is shut off or rebooted.
In 2.x/3.x you can assign a single device name to
many directories by simply listing all of the directories
after the device name.
S:, L:, C:, FONTS:, DEVS:, LIBS:, T:, and SYS: are
all made during normal startups. All these assigns
directly relate with system operation. Therefor, they
should not be tampered with for any reason.
If there is already a directory with an assignment,
any new assignment will replace it. You cannot, however,
assign the same name to a device that already exists. So
an assign to device Work: if a disk whose name Work: is
already mounted.
OPTIONS
LIST
Lists the current assignments. Under 1.3, if you
specify a single already assigned name on the command
line with LIST, it will be removed from the device list.
Under 2.x/ 3.x you can either make or remove assignments
along with listing them.
EXISTS
Takes a logical device name as an argument. If the
name exists, the device name and its assignment are
displayed. If the name does not exist, then the
condition flag is set to WARN (return flag 5). This will
cause an IF WARN batch file statement to succeed.
REMOVE
For 1.3: Takes a logical device name as an argument,
and removes it from the device list. This is useful
largely to individuals writing handlers, careless use of
this option can easily crash the Amiga. It will not,
however free up the memory that was taken up with the
assign.
For 2.x/3.x: It can be used to delete one directory
from a list of assigns. Opposite of ADD (see below).
DISMOUNT
2.X/3.X ONLY: Used exactly like the REMOVE keyword
for 1.3 to remove a device from a list of mounted
devices.
DEFER
2.x/3.x Only: Postpones the assign until a command
tries to access that device. Defer will not throw out an
error if it searches for a directory and it does not
exist.
PATH
2.x/3.x Only: This expands on the DEFER keyword.
Whereas DEFER eventually binds the assign, PATH keeps the
assign non-binding. Not only will it wait for a command
to access that device, but it will reevaluate the assign
every other time that device is requested for. (NB: This
is very convenient if you are a floppy only user. You
will not have to replace the Workbench each time FONTS:
is requested. Instead, you can insert different floppy
named fonts: each time that device is scanned for.)
PATH will not accept multi directory assigns.
ADD
2.x/3.x Only: Let's you add new directories to an
existing assign. For instance, if you assign a device
that is alread assigned you will lose your old assign. If
you use the ADD keyword, you will add the new assign to
the old assign.
VOLS
DIRS
DEVICES
2.x/3.x Only: Limits the information that is
displayed when you list your assigns. VOLS shows you only
which volumes are assigned, DIRS shows you only which
directories are assigned. DEVICES shows you only which
devices are assigned. If none of these keywords are used
then all three kind of information are displayed.
CAUTIONS
Random or careless assignments of the Amiga's
pre-assigned devices can cause mass confusion.
Random or careless use of the REMOVE option can cause
a GURU.
SEE ALSO
Execute
EXAMPLES
1.
ASSIGN DICTIONARY: df1:usr/lib/dictionary
DICTIONARY: may now be used as a synonym for the
complete path df1:usr/lib/dictionary. If a program uses
the logical device DICTIONARY: rather than a hardcoded
directory name, then changing the DICTIONARY: assignment
will change the dictionary that the program will use.
Assign allows a practically infinite number of
assignments or deletions to be made on one command line.
You may remove an assignment by using a minus '-' sign
instead of a logical directory or filename to subtract
this assignment from the device list.
2. To return all the assignments made to your system
just enter:
Assign
3. 1.3 Only:
To assign POOF: to the disk in DF0:, remove the
assignments for PUF: and DUF: and assigns CRUFT: to HD0:.
ASSIGN POOF: DF0: PUF: - DUF: - CRUFT: HD0:
4.2.x/3.x Only:
To assign multiple paths to one device:
Assign Music: Work:DeliTracker/Mods Work:OctaMed/Meds
To assign Fonts: to df0:Fonts only when a program tries to
access Fonts:
Assign Fonts: Df0:Fonts DEFER
Avail(V1.3, 2.x,3.x in C:)
NAME
Avail - Report memory statistics.
SYNOPSIS
1.3
Avail CHIP/s FAST/s TOTAL/s
2.x/3.x
Avail CHIP/s FAST/s TOTAL/s FLUSH/s
DESCRIPTION
Avail reports on the amount of memory available in
the system, its type, how much of each type is in use and
is free, and the largest single block of memory of each
type (also known as contiguous memory).
This command is useful with shell scripts to
determine if there is enough memory available to load a
program, file or graphic before you actually perform the
load.
OPTIONS
CHIP
Reports the total amount of free chip memory
FAST
Reports the total amount of free fast memory
TOTAL
Reports the total of all free memory, both fast and
chip.
FLUSH
2.x/3.x Only: This option will force all unused
devices, libraries and other resources out of the system,
which gives the most accurate report of available memory.
This will free you as much memory as possible by killing
all information in your memory not being used by any
program. This is useful to kill off all the resedue of
processes that exited but did not give you all your
memory back.
EXAMPLES
1. To get all available system ram:
Avail
2. Show only Fast Memory
Avail Fast
BackTick (2.x/3.x ONLY) (CLI Function)
NAME
BackTick- Allows you to include the text output of
one command to be the input of another command.
SYNOPSIS
SomeCLICommand `AnotherCommand`
DESCRIPTION
This is a new and important feature of 2.x/3.x.
BackTick lets you insert the text output of one command
to be the input of another command. For instance, if you
wanted to print the contents of the Work:ESCOM directory
with an informative header you would type this:
ECHO >prt: "The directories in work are:" `Dir
Work:ESCOM`
It's a good idea to know where this key is, so I'll
tell you. It is the key right above the Tab key. The
unshifted version of that key is the BackTick (`), the
shifted version is the Tilde (~). If you try to use the
parenthesis key (') your command will fail. There is a
difference between those two keys even though they look
similar on the screen.
The backtick command always evaluates itself at the
time it is issued. If you wish to have the backtick
command evaluated after several other commands have been
issued you must place the asterix (*) escape character
before each backtick.
For instance, lets say you want to create an alias
which displays the contents of the Gould:Loser directory.
You would type:
Alias grovel Echo "Contents of the Loser directory is: *`dir Gould:Loser*`
Now, whenever you want to see what is in that
directory you merely type 'grovel' and it will be shown.
But, if you don't include the asterixes then any changes
made to the Gould:Loser directory will not be reflected.
You will only see what was in that directory when the
Alias was first made.
With some experimentation you will find this DOS
function to be one of the most useful.
BaseName(V1.3- arp component))
NAME
BaseName - Display the Base (filename) of a pathname.
SYNOPSIS
BaseName Path/a Suffix
DESCRIPTION
Basename extracts the filename from a long pathname,
displaying it to the standard output. You can also give
BaseName a suffix to delete. The most common use for
BaseName is in scripts, where it is used to generate new
filenames from old. This command is most useful with a
shell that supports command substitution and piping.
EXAMPLE
BaseName "DF0:Scoobie/Doobie/Foobar"
Foobar
BaseName "DF0:Scoobie/Doobie/Foobar.c" .c
Foobar
OTHER
This command is new with V1.3 of Arp, it is not
available with the Commodore distribution.
It has been replaced by several internal calls in
v2.x/3.x.
Binddrivers (1.3,2.x,3.x) (location: C)
NAME
Binddrivers - Mounts device drivers residing in your
Expansion Drawer.
SYNOPSIS
Binddrivers
DESCRIPTION
Locates device drivers reisiding in the Expansion
drawer of your Workbench: disk. It then activates those
drivers for use. This is useful to add devices to your
system harddrives that are not mounted by the operating
system.
You will also find binddrivers in your
startup-sequence. This way, it can mount any external
devices during startup. If you don't have a device in
your expansion drawer or if you want those devices
mounted when you are ready for them, then you can remove
this command from your startup-sequence.
NB: This is not part of 1.2.
EXAMPLE
1. To load the device drivers in the Expansion
directory of sys:
Binddrivers
Break(V1.3, 2.x, 3.x: internal command)
NAME
Break - Send a signal to a background process.
SYNOPSIS
Break Process=T=Task/a A=ALL/s C/s D/s E/s F/s
DESCRIPTION
Many programs which run from the CLI will respond to
the typing of one of the control characters C D E or F.
By far the most common is control-C which usually causes
a process to terminate. If you execute a task in the
background (by using Run or ARun), you will not be able
to send it a break signal from the keyboard, and that is
where Break comes in. Once you know the CLI number of
the process you wish to signal (available immediately
after you run the process or by using the Status
program), you can send one of these control signals to
the background process. It simulates selecting a CLI
process with the mouse and pressing the specified
CTRL-key keystrokes.
You may trigger up to four breaks at a time.
EXAMPLE
1. To send a control C to background process number
2:
Break 2 C or Break 2 (Break defaults to control C)
2. To send ALL control signals to background process
number 3:
Break 3 C D E F or Break 3 ALL
3. 2.x/3.x Only: To signal a break to a program
running under the WAIT command:
Break 'STATUS Com=Wait'
CONSIDERATIONS
Not all programs respond to break requests.
SEE ALSO
Status
CD(V1.3 in C:) (2.x/3.x Internal)
NAME
CD - Report or change the current directory.
SYNOPSIS
CD Dir ROOT
DESCRIPTION
CD when given a valid directory name, makes that
directory the current or default working directory. To
display the current directory, type CD without any
arguments.
It's also supplied with the switch ROOT. By using
ROOT in place of an actual directory name, an assignment
to the root of the filing system will be made. This is
the device you booted from, rather than a specific disk.
For example, if you booted from Drive Df0:, CD ROOT will
permanently assign your directory to any disk in drive
Df0:.
It also has a simple pattern matching capability.
You may use a wildcard specification as an argument to
CD, CD will make the first directory it finds that
matches the pattern the current directory. Pattern
matching is utilized with the Amiga wildcards).
You can also move up one directory by using multiple
slashes (/). For instance, if the current directory is:
Work:Art/AGA by typing CD // you will change to the Work:
directory.
2.x/3.x only: You can also change directories by
simply typing the path name at the shell prompt. The CD
command is only needed if there are any spaces in the
path name. In this case you must place the entire path in
quotes.
NB: AmigaDOS handles default drives unlike any other
personal computer. Let's say you insert a disk named
Stuff: in df0: and type CD df0:. Then, you remove the
disk and insert a disk named Things: and type dir df0:,
you will be requested to insert Stuff: in df0:. To get
around this, merely type Cd df0: whenever a new disk is
inserted. This makes your Amiga read the new volume label
and it forgets all about the old disk.
EXAMPLE
1. To change directory to df0:libs
CD DF0:LIBS
2. To report current directory
CD
3. To make any disk in Drive 0 the current directory
CD ROOT
4. To change back to your root directory (2.x/3/x only)
CD :
5. To move back up two directories (2.x/3.x only)
CD //
SEE ALSO
Prompt
ChangeTaskPri(V1.3,2.x,3.x) Location: C:)
NAME
ChangeTaskPri - Change a tasks execution priority.
SYNOPSIS
ChangeTaskPri P=Pri,T=TASK=PROCESS
DESCRIPTION
By increasing/decreasing the priority of various
tasks in the system, you can increase/decrease the amount
of CPU time each task is allocated. The ARP version of
this command checks the value of your priority, and also
allows you to change task priorities of currently running
tasks. This should be performed with care. If no task
number is entered, this command uses the currently
executing task.
If executed with no arguments, ChangeTaskPri will
return the priority of the currently executing process.
This is useful in shell scripts.
Your Amiga's operating system was created where each
task that is running gets assigned a priority from -128
to 127. The processor asses this number and prioritises
the tasks. The higher the number the more processing time
will be alloted to it by the processor.
WARNING: Never raise a task priority higher than 5 or
less than -5. If you raise it above 5 you will override
important system tasks such as the input handler (which
checks the keyboard and the mouse). If the priority is
below -5 it will be completely shut out of the CPU by the
most trivial of instruction.
EXAMPLE
1. To change task 3's priority to -5
ChangeTaskPri -5 Process 3
2. To Change current CLI's priority
ChangeTaskPri 5
3. 2.x/3.x ONLY: To utilize the backtick feature to
change the priority of the C:CONCLIP task to 5
ChangeTaskPri 5 Process 'Status com=c:conclip'
Cmp(V1.3 ARP Only)
NAME
Cmp - Compare files and report differences.
SYNOPSIS
Cmp From With FULL QUICK ALL
DESCRIPTION
Use Cmp to display differences between binary or text
files. When comparing single files, the return code will
be set to WARN if the files do not match. This is useful
in scripts with IF statements. The return code on
complex pattern matches with more than one file will
always be zero. When specifying directories as either the
From or With arguments, you may use a dot which means
"current directory".
You can use either C-e (Control E) or C-f (Control F)
to abort the comparison of the current files and move on
to the next. This is most useful with multiple input
files and the FULL (see below) option. As usual, a C-c
(Control C) will abort the program all together.
INPUT FILES
You can specify the file or files to be compared
quite easily and naturally with Cmp using simple
pathnames or wildcard patterns or even directory names.
When you specify wildcards and/or directories to be
compared, Cmp will compare files with the same names in
each directory. Cmp will not abort if it cannot find the
second file, it will simply print an informative message
and go on to the next file. If you need to compare files
with different names, then you must specify each name in
full as the With name and the From name. A more detailed
explanation follows:
If From is a file, then With may be either a
directory or another file. If a directory is supplied,
then Cmp looks for a file with the same name as the From
file in that directory:
So, to a compare File with RAD:Dir/File2
Cmp File RAD:dir/File2
And to compare File with DirName/File
Cmp File DirName
You may also use a wildcard pattern as the From file.
In this case, the With name must be a directory. Cmp
expands the wildcard specification and tries to find
files with that name in the With directory:
Cmp File RAD:Foo/$?.c DF0:c
Finally, you can also use two directory names as the
From and With specification. This will compare all the
files of the same name in the From directory with all the
files of the same name in the With directory:
Cmp Dir1 Dir2
OPTIONS
FULL
This will display all points at which the two files
differ. The display is of the form "Offset: Byte1 Byte2"
where Offset is in decimal and Byte1 Byte2 are in hex.
Use C-e or C-f to move to the next file in the series, or
C-c to abort.
QUICK
The QUICK option will check to see if the two files
appear to be identical, by first comparing the date
stamps and file lengths, and if these are the same the
file comparison is skipped saving some time.
ALL
If there are subdirectories within the directories
you are comparing, the ALL switch will force Cmp to
recursively descend these directories, comparing files as
appropriate.
NOTE
This command is new with V1.3 of ARP, it is not
available with the Commodore distribution.
CONCLIP (2.X/3.X only) (location: C:)
NAME
Conclip- Directs console device to use the clipboard
for cutting-and-pasting.
SYNOPSIS
CONCLIP [UNIT clipnum] [OFF]
DESCRIPTION
By default, the Amiga's console device only uses its
own internal buffer for copying and pasting. This command
directs the console device to use the clipboard for its
copying and pasting.
Copy-and-Paste lets you copy a block of text from a
console window by drag-selecting it with the mouse then
pressing RightAmiga-C. You can then paste this into
another console window by activating that console and
pressing the RightAMiga- V.
Conclip not only lets you paste into other consoles
but also into the window of any other application which
supports the clipboard.
It's an extremely good idea to make sure it is in
your Startup-Sequence. This way, you will not have to
worry about it.
Note: Conclip requires the iffparse.library to be in
your LIBS: drawer and the clipboard.device file to be in
your DEVS: drawer.
KEYWORDS
UNIT
Lets you specify the device unit number from 0 to
255. This designates the clipboard device number you
wish to paste to. You do not have to add the word 'UNIT',
you can merely specify the number.
OFF
Lets you turn off the clipboard device for that
console. There is really no need to do this as it will
never effect the operation of anything else.
EXAMPLES
1. To direct the console to use the clipboard to
copy-and-paste:
Conclip
2. To change the clipboard unit number used by the
console device to unit 3:
Conclip 3
(By the way, the console device is utilized to accept
keyboard and mouse strokes and print them to the screen.
The output goes to a console window. The CLI has its very
own console window.)
Copy(V1.3,2.x,3.x) (in the C: directory))
NAME
Copy - Copy files.
SYNOPSIS
Copy From To ALL QUIET BUF=BUFFER CLONE DATES
NOPRO COM FLAGS QUICK
DESCRIPTION
COPY duplicates the contents of the file or files (if
wildcards or a directory is given) of its FROM argument
to the file or directory specified in its TO argument,
overwriting any existing file or files of the same names.
FILE SPECIFICATION
The From argument may be a file, a directory or a
wildcard pattern. You can use a dot '.' as either the
From or To directory to indicate the current directory.
Double quotes "" can be used to refer to the current
directory.
If you copy a file, you may give that file the same
name or a different name as the original. If the
destination has the same name as the original then the
new copy will replace it.
Copy can duplicate many copies of a file to the same
directory if dirrerent names are used. It can also
duplicate files to many different directories.
If the From argument is a directory or a pattern, the
To argument is assumed to be a directory or destination
replacement pattern. If the directory specified in the
To argument does not exist, it will be created for you.
If you include wildcard characters in the To
argument, these are taken to be a request to use a
pattern substitution for the destination filename. The
expected syntax is:
<optional_prefix>|<optional_postfix>
You may specify neither, one, or both of these
optional tags. If you exceed the length of an AmigaDOS
filename (30 characters as of this writing) the name will
be silently truncated. You can also indicate which
portion of the From filename you want to be replaced by
using the wildcard characters in the source pattern. The
rule followed is that any constant (i.e., non-wildcarded)
portion of the source pattern is discarded. As an
example, the command:
Copy l#? start#?end
will copy all files beginning with an 'l'. The
destination names these will be copied to will be formed
by removing the 'l', and sticking 'start' on the front,
and 'end' on the back. So, for example, the file 'LXXX'
would be copied to the file 'startXXXend'. If the start
or end patterns are omitted, these are regarded as null
strings.
In 1.3 you CANNOT use wildcards for Directory names,
only file names. 2.x/3.x allows this.
1.3 will not let you copy a file to a directory that
does not exist. In 2.x/3.x COPY will create a directory
if one does not exist.
If you copy a file to the same directory it cannot
have a file with that same name of the protection bit is
set on the file being copied to.
The from statement is not needed as long as the
source and target files are in the appropriate order. If
the orders are changed (Copy To filename FROM filename),
the FROM is required.
If you don't specify a directory, but the TO keyword
is used, then the current directory is copied to the
destination. For instance, COPY TO Work: will copy the
entire contents of the current directory to Work:.
Devices such as PRT: and SPEAK: can be designated as
the destination of any file being copied.
2.x/3.x Only: You can chose multiple FROM files as
well as multiple TO files.
OPTIONS
ALL
Copies ALL the files from the source directory to the
destination directory or device. This will recursively
descend all subdirectories found in the From directory,
and create them (if they do not already exist) in the To
directory. Without this switch, only the first level of
the directory hierarchy will be duplicated.
QUIET
Performs a Copy without reporting what it is doing.
This is useful for doing copies in the background, when
you do not wish to be disturbed by informative messages.
Note that errors will still be reported.
BUF=BUFFER
This allows you to specify the number of 512 byte
buffers used during the copy. Unlike the Commodore Copy,
which uses a fixed number of buffers if this option is
not specified (currently, 200 buffers), the ARP Copy sets
its internal buffer size intelligently as a function of
how much memory your system contains and the size of the
file to be copied. Using this option overrides this
intelligent behavior.
CLONE
This instructs Copy to duplicate the date, comments
and protection bits (except the archive bit) of the
original file. The default is to Copy only the
protection bits. (also see Environment, below). This is
the same as using both the DATE and COM keywords.
DATE
This option instructs Copy to duplicate the datestamp
(also see Environment, below).
NOPRO
By default, Copy duplicates the protection bits of
the file(s) (except the archive bit). Using this option
will override this behavior, and cause the file to be
created with the current system default protection (also
see Environment, below).
COM
This forces Copy to duplicate the comment for the
file. The default is not to duplicate the comment (also
see Environment, below).
QUICK
This ARP addition is a highly useful option which
will duplicate files only if the destination file does
not exist or is not the same. Copy uses the Datestamp,
Filesize, Protect bits, and also the Filenote (but only
if you have enabled copying filenotes) to determine
whether or not the file is the same. Since a byte by byte
compare is not done, it is possible to fool Copy.
However, in normal operation of the Amiga, this
dramatically speeds up Copies between directories and is
perfectly safe (also see Environment, below).
FLAGS
You can override the current setting of your
environment flags using this keyword. Any option
specified on the command line overrides the default
settings specified by the copyflags environment variable.
This keyword takes a string of the same type used for the
copyflags variable. For a discussion of these flags, see
Environment, below.
NOREQ
Normally, whenever you try to copy to a directory
that does not exist a requestor will pop up asking you to
insert it. If you do not want that little requestor,
then use this keyword. This is useful for when you want
to write a script for someone else who does not have a
device you want to try to copy to (such as a printer or a
speech device- speech devices were removed from the
Workbench with 2.0).
ENVIRONMENT
If you prefer a behavior for copy other than the
default, you can specify this behavior permanently by
setting a value for the copyflags environment variable.
This variable takes a string of characters composed of
the following:
N Always copy filenotes (see COM, above).
C Always copy original datestamp (see DATES, above).
Q Always copy QUICK (see QUICK, above).
P Never copy protection flags (see NOPRO, above).
O This flag does not correspond to any command line
arguments. When this flag is set, Copy will only
duplicate files which already exist in the destination
directory, it stands for 'OLD', and essentially
performs an update operation. This is extremely useful
when trying to update old software with new software.
These flags can be overridden by using a command line
option, or by using the FLAGS keyword to specify new
ones. Note also that case is not significant. You can
set the copyflags variable using Set, SetEnv, or directly
from the command line if you are using the Shell instead
of the CLI.
Set copyflags=CQ
SetEnv copyflags=CQ
copyflags=CQ ; This only works in ASH
The settings shown above is perhaps the most common:
it enables copying datestamps, protection bits, and the
QUICK option.
EXAMPLE
1. To perform an update from one directory to another
without using copyflags, use:
Copy NewDir OldDir FLAGS=O
2. To copy a file called TheFile to OtherFile in the
same dir:
Copy TheFile Otherfile
or
Copy TheFile to Otherfile
or
Copy To Otherfile From TheFile
3. To copy all the files from Df0: to Work:
Copy Work: df0:
4. To copy all files and subdirectories from df0: to
Work:
Copy Df0: Work: ALL
5. Copy all the files in the current directory to
Ram:
Copy "" Ram:
6. To Copy a file called Dudes in the current
directory to a file with the same name to a directory
called :WildWest/Cowboys, which is on the same disk:
Copy Dudes :WildWest/Cowboys
7. To Copy selected files from the current directory
to the Stuff: directory.
Copy "" (ThisFile|ThatFile|AnyFile|PickaFile) Stuff:
CPU (V2.x & 3.x only) (located in the C: Directory)
NAME
CPU - Identifies which processor you have (68000,
68020,68030, or 68040...). It also sets the advanced
options of non 68000 or 68010 processors.
SYNOPSIS
CPU Cache Nocache DataCache NoDataCache Instcache
Noinstcache ExternalCache NoExternalCache CopyBack
NoCopyBack Burst NoBurst InstBurst NoInstburst
DataBurst NoDataBurst Trap NoTrap FastRom NoFastRom
NoMMUText Check 68010|68020|68030|68040|68881|68882|
FPU|MMU
OPTIONS
Cache Nocache DataCache NoDataCache Instcache
Noinstcache ExternalCache NoExternalCache CopyBack
NoCopyBack:
These are used to control the cache features of all
Motorola processors over 68010. These higher end
processors all have higher end instruction caches, which
stores processes inside the CPU itself. This allows those
internal functions to perform lightening fast because
they are inherant to the CPU and do not have to be
retrieved from memory. Instcache/NoInstcache turns these
functions on or off.
The 68030 & 68040 have a data cache in addition to
the instruction cache. These allow data to be retried
from memory in one grand instruction, thereby lowering
your CPU's overhead. DATACACHE / NODATACACHE turns this
on or off.
CACHE / NOCACHE can turn on or off all the caches. In
1.3 caches are off by default and should be turned on
with the CPU command in your startup-sequence. 2.x/3.x
has them turned on as a default.
Some older programs (games mostly) that have problems
running with the higher end processors. These problems
may sometimes be solved by turning all the caches off.
2.1 has added the CopyBack and NoCopyBack flags.
These help you manage the datacache on the 68040 which
does not automatically update the cache as changes are
made to the data. By default, this is off because it
conflicts with too many programs to be of any use.
In addition to internal caches, there are also
external caches which can be turned on or off with the
ExternalCache or NoExternalCache flags.
Burst NoBurst InstBurst NoInstburst
DataBurst NoDataBurst:
If your Amiga's memory is configured to accept a
special processor mode which feeds data at a superduper
fast speed you can utilize the Burst mode.
InstBurst and NoInstBurst turn on or off the
instruction mode in databursts.
DataBurst and NoDataBurst turn on or off the data
mode in databursts.
Burst and NoBurst control both the instruction and
data modes.
Trap/NoTrap:
This is a programmer's debugging flag. These will set
or clear the memory access trap which warns you if your
program is trying to access the lower 256 bytes of memory
or any memory above the 16 megabyte address (this 16
megabye hit is only noticed in the 68000 processor, 68010
and above allow higher end memory to be addressed).
This illegal entry information is sent via the serial
port. To use this function there must be a 9600 bps
terminal hooked up to your serial port as well as the
higher end processor.
FastROM / NoFastROM:
The 68000 processor is a 32-bit processor that is
accessed 16-bits at a time. If you add an accelerator
that has a full 32-bit processor and an MMU, you can
remap the kickstart into that 32-bit RAM and the MMU will
make it appear as though that is where the Kickstart
really lives. The FastROM command moves the ROM image
there, while the NoFastROM removes it from that area.
NoMMUTest:
Lets you remap kickstart to 32-bit ram without
actually checking to see if it is being used. This is a
function of the MMU (Memory Management Unit).
Check 68010|68020|68030|68040|68881|68882|FPU|MMU
This is used to check for the existence of why type
of processor or co-processor you have installed. For
example, if you type: "CPU Check 68000" and you have a
68000 installed, it will return a 1. If you have any
other processor installed a 0 will be returned.
EXAMPLE
1. To turn off the instruction cache, turn the data
cache of, and move the Kickstart ROM image to protected
32-bit memory:
CPU NoInstcache NoDataCache FastRom
Date(V1.3, 2.x, 3.x) (Locatin C:))
NAME
DATE - Set or display the system date.
SYNOPSIS
DATE Date Time TO=VER/k
DESCRIPTION
Date is used to set the systems idea of the current
date and time, or to display the systems idea of the
current date and time.
To display the current system time simply use Date
with no arguments. You may specify a TO or verification
file to send the date to, if no TO file is specified, the
date is displayed in the current window.
To set the time you use the format HH:MM:SS where H
stands for hours, M stands for minutes, and S stands for
seconds. Leading zeroes are optional for all versions
except 1.2. 1.2 requires that you include a leading zero
before the 10th month.
Both the display of the date and the setting of the
date are determined by the 1.3 environment variable
'dateformat'. Under 2.x/3.x it is stored simply as
'name'. This veriable can be a file or an actual device
such as a printer. This determines one of several
international formats for displaying and setting the
date. If 'dateformat' is not set or if its value is zero,
the AmigaDOS format is used. Here is a list of the legal
values for dateformat, and the corresponding input and
output formats:
0 This is the default AmigaDOS format, DD-MMM-YY
is used for both input and output. Note that
if datetime is undefined, or the value is
illegal, this will be the default option.
1 International format, YY-MM-DD is the format.
2 USA format, MM-DD-YY is the format.
3 Canadian format, DD-MM-YY is the format.
Note that dateformat controls the format for the
input string as well as the output display. You never
have to enter leading zeros, and you may always use words
like SATURDAY, YESTERDAY, TOMORROW, etc.
Saturday, Sunday, Monday, and the rest of the days of
the week can be used as flags. The system will evaluate
the day then advance the system date to match the
specified day of the week. So, if it is Monday and you
specify Thursday, the system clock will advance by three
days.
FOR 1.3 Only: SETCLOCK is used in the
startup-sequence to automatically read the system's
hardware clock (if present). The A1000 and A500 did not
come with a clock installed. Therefor, AmigaDOS would
check the boot disk for the date of most recent file and
sets the system date according to that. The Date command
is then used to set the proper date and time. This was
lost anytime you rebooted the computer or utilized the
SETCLOCK SAVE command.
FOR 2.x/3.x: The clock is read automatically by the
system without utilizing the SETCLOCK command. Therefor,
you will never see it listed anywhere.
EXAMPLES
1. To use default AmigaDOS format.
SET dateformat=0
2. To set the date, using AmigaDOS format
Date 1-jan-88
3. To set the date to the next day's date and the
time to 12:00
Date Tomorrow 12:00
Delete(V1.3, 2.x, 3.x...in C: directory))
NAME
Delete - Delete any number of files or directories.
SYNOPSIS
Delete Files ALL Q=QUIET A=ASK
DESCRIPTION
Under 1.3 you can only delete up to ten files or
directories with a single Delete command. Wildcards are
acceptable.
Under 2.x/3.x you can specify any number of files to
delete on the command line, and you can also use wildcard
patterns for any or all of these files.
OPTIONS
ALL
By default, you can only Delete empty directories.
If you wish to Delete a directory and everything it
contains, you can specify this option on the command
line. Note that directories may contain other
directories, which themselves may contain directories or
files: This option will delete that entire branch of the
directory tree, including these additional directories
and files.
Q=QUIET
If you use the ALL switch, or if you specify wildcard
patterns, Delete displays a message with each file that
it deletes. This option causes Delete to do its work
silently, though error messages are still reported.
A=ASK
This enters interactive mode, where Delete will
display the name of the file to Delete, and prompt you
with a question mark. If you answer 'Y' or 'y', and then
press return, the file will be deleted. Any other answer
will preserve the file. Used with the ALL switch, ASK
will ask you if you wish to enter any directories it
encounters in its search. Again, typing a 'Y' or 'y' will
enter these directories, any other character will proceed
to the next entry in the current directory.
FORCE
If the 'd' protection bit is set for a file or
directory then that file is protected from deletion. But,
by using the FORCE keyword, any file will be deleted
including the ones that are 'protected'.
EXAMPLE
1. Delete all files in the current directory
Delete #?
2. Ask about deleting each file and directory in the
current directory, and each subdirectory and file.
Delete #? ASK ALL
3. Deletes all files in the directory which start
with this or that.
Delete (This|that)#?
Dir(V1.3, 2.x/3.x) (located in the C: directory)
NAME
Dir - Pretty display of files and directories.
SYNOPSIS
DIR Dir OPT [ADFHIS] SIZE INTER HILITE FILES DIRS ALL
DESCRIPTION
Dir by itself displays any files and directories in
the current directory. By default, Dir will display any
subdirectories, one per line, and then any files, in two
columns, in sorted order. Directories are followed by
the string "(dir)".
You can specify an alternate directory to display as
an argument, and you may also use wildcards. If you use
wildcards, Dir will display all files that match that
wildcard pattern. If it encounters a directory during
the course of its search for matching patterns, it will
display the name of the directory, and also its contents.
OPTIONS
OPT
This flag along with a single letter can represent
the option you desire, or you may use the clearer keyword
equivalents supplied. The options and their keyword
equivalents are described below:
SIZE or OPT S
This ARP option displays the names of the files and
their sizes in two columns on the display device. If a
directory is encountered, it is identified as usual with
a "(dir)".
HILITE or OPT H
This ARP option enables pretty printing of Dirs
output. All directory names will be displayed in inverse
video.
FILES or OPT F
This displays only files, any directories found will
will not be displayed.
DIRS or OPT D
This displays only directories, any files found will
not be displayed.
ALL or Opt A
This option displays the complete contents of that
branch of the directory tree. As Dir descends a level,
the indentation is increased to make the organization of
the disk clearer to the eye. You may use some of the
other options or keywords along with ALL to generate the
display you need.
INTER or OPT I
This allows interactive file browsing through a
directory or a disk. Using this option, you will be
presented with a file or directory name, followed by a
question mark. You can find out what additional options
are available to you at this point by typing another
question mark '?', and pressing return. These are:
B=BACK
Moves backwards, up the directory tree. If you are
at the top, this will exit the listing.
DEL=DELETE
This will delete the current file.
E=ENTER
This will enter a directory. Note that you must be
at a directory entry in order for this option to be
valid.
Q=QUIT
This will quit Dir.
T=TYPE
This will type the current file.
C=COM
This takes any command as an argument, and sends it
to a subshell. Any shell command can be used here,
including the IO Redirection operators (<, >, and >>).
If you do not specify a command as an argument, you will
be prompted for one.
EXAMPLES
1. To get a listing of all directories on drive DF1:
DIR DF1: ALL DIRS
or
DIR DF1: OPT AD
2. To get a listing of all directories and files and
the sizes of the files on drive df0:, as well as
displaying the directories in inverse video do:
DIR DF1: ALL SIZES HILITE
or
DF1: OPT ASH
DiskChange(V1.3, 2.x, 3.x) (located C:))
NAME
DiskChange - Inform AmigaDOS that a 5 1/4 disk has
been changed.
SYNOPSIS
DiskChange Dev
DESCRIPTION
5 1/4 inch disk drives do not detect when there has
been a disk swap, and therefore cannot inform AmigaDOS.
After changing disks in the 5 1/4 inch disk drive, you
must issue this command. You will also need to do this if
you make a change to the disk's name using Relabel and
you want the Workbench to hear about it.
Note that DiskChange may also be useful with other
types of media, such as removable media hard disks, or if
you are running FFS on floppy drives.
EXAMPLE
1. To inform AmigaDOS that you have changed a disk in
an external 5 1/4 inch drive.
Diskchange df1:
2. To inform AmigaDOS that you have changed a disk in
an external 5 1/4 inch disk drive that is mounted right
behind a 3 1/2 inch external drive:
Diskchange df2:
DiskCopy (1.2 in C: Directory) (1.3, 2.x, 3.x
internal)
NAME
Diskcopy - Copies entire diskettes.
SYNOPSIS
DiskCopy FROM (source drive) TO (Destination drive)
NAME (VolumeName) VERIFY MULTI
Other computer systems require you to format a disk
before you make copies of old data. The Amiga lets you
copy to a disk that has information already stored on it.
All that old information will be lost though. This lets
you make backups of all important disk while helping you
dispose of files that you no longer use.
DiskCopy is very useful because it takes just as much
time to format a blank disk as it does to perform a
diskcopy. But, if you only have a few files you wish to
copy, it may be quicker to just delete the files on the
destination disk you don't need using the delete command
then using the Copy command to transfer the ones you
want.
DiskCopy can also be used devices of different types.
For instance you can copy between Ram: and Rad:. Or, df2:
and Ram. But, for it to work with Rad:, Rad: must contain
the same number of tracks (80) and blocks per track (11)
as a floppy device.
KEYWORDS
FROM
This is the source, or the device you are copying
from. If you only have one disk drive, this will be df0:
or the actual name of the disk mounted there (eg
MyDisk:). It can also be df1:, df2:, df3:, or df4: (if
you actually have these optional drives). OR, it can be
the RAD: or RAM: drive as stated before. Remember you
RAD: must be created in the same nature as a regular disk
drive for this to work.
TO
This is the desitination, or the device you are copying
to. If you have only one diskdrive the copy may take quite
a few disk swaps. This is because the contents of the source
disk gets buffered into ram: before getting transferred to
the destination disk. If you have an original 256K A1000,
this may take up to eight swaps. If you have an unexpanded
A500, you're looking at about three swaps. If you have one
meg of ram, you should not need to swap more than once.
If you have two diskdrives you are the lucky one. This is
because you will not have to make any swaps either because
the data is passed straight through between the drives.
If you have 1.3 the TO keyword is mandetory! The command
will not function without it. But, under 2.x/3.x you do not
need to put this keyword.
NAME
This is the name you are giving to the new copy. If you
don't give a name, then the new volume will have the same
name as the original. Despite the names being the same,
there is some 'hidden' information on the disk which will
distinguish the two disks from each other.
When diskcopy is stared, and the disks are being copied
a neat little status bar opens up on your window showing
you the progress as all 80 tracks are copied. YOu can
cancel this process at any time by hitting the control
break keys: Ctrl-C and then Return. If you hit these keys
after the copying has already started, all information on
the destination disk will be lost. The destination disk
will also be rendered useless until it is formatted or
diskcopied again.
NOVERIFY
As AmigaDOS copies a disk, it verifies each sector
after it formats it. If you don't want AmigaDOS to check
its steps, then use this keyword.
There is no point in using this keyword. It is better
to be safe than sorry. And a few seconds of time spent
verifying your copying will save you tons of hearache later.
MULTI
Lets you load the entire disk into memory (if there is
at least 880k of free memory). You can then insert as many
destination disks as you want making multiple copies. The
system will prompt you when it is ready for the next disk.
EXAMPLES
1. To make a copy from df0: to df1:
Diskcopy from df0: to df1: ; for any version of AmigaDOS.
Diskcopy from df0: df1: ; for 2.x/3.x only
Diskcopy df0: df1: ; for 2.x/3.x only
DiskDoctor (V 1.3 and 2.04. Omitted after 2.04) (in
C: directory)
NAME
DiskDoctor - Reconstructs the file structure of
corrupted disks.
SYNOPSIS
DiskDoctor (drivename)
DESCRIPTION
This can be described in two words: it sucks. It is
useless. It has no purpose on any computer. That is why
it was removed after 2.04.
The concept was to repair directory and file
structures that were destroyed for any number of reasons.
These reasons can be anything from removing the disk
while it is still being accessed to a nuclear explosion.
When any type of magnetism comes in contact with your
floppy the data is scrambled and AmigaDOS can't read
anything there. You will get a variety of errors such as
'Volume is not validated', 'Not a DOS disk', 'Disk is
unreadable', or the ever so present 'Checksum Error' if
such damage occured.
Diskdoctor attempts to correct the damaged data on
the disk and save as much of it as it can. DiskDoctor
can only attempt to repair FFS disks if the DEVS:
Mountlist is set to 0x444F5301 under the DOSTYPE keyword.
DiskDoctor is quite reckless when it repairs your
disk. You see, after it retrieves what data it can
salvage overwriting other information that may still be
used on the disk. It does this over- writing
indescriminatly without recognition of importance or
existence.
Therefor, if you ever use DiskDoctor, make sure you
are trying to repair a copy of your disk. There is no
reason to use this when there are so many fabulous
disksalvage programs. The most notible is DiskSalv
created by David Haynie (former Commodore engineer and
all around Amiga Demi-God). His program along with the
many other USEFUL salvage programs that actually work are
listed in the 'Replacements' selection of this reference
program. Quarterback Tools (no longer being developed)
and AmiBack Tools by Intelligent Designs are both running
close second to DiskSalv.
EXAMPLES
I'M NOT GIVING ANY. THIS PROGRAM IS TOO STUPID AND
USELESS TO EVEN ACKNOWLEDGE IT WITH AN EXAMPLE.
Echo(V1.3 in C:) (2.x/3.x internal))
NAME
Echo - Echo a string to the terminal.
SYNOPSIS
Echo [string] NOLINE FIRST LEN
DESCRIPTION
Echo displays its argument to the current output,
this can be the printer, a file or the terminal. Echo is
typically used in scripts, but it can also be used (and
useful) to send escape sequences to things like printers.
2.x/3.x only: You can use echo to output a file to
the environment. This is shown in the example below.
Note that with the added keywords, you MUST use
double quotes to delimit a line to echo under 1.3. Under
2.x/3.x you don't need the quotes ONLY if it appears last
on the command line.
If you want to add a line feed, use the *N character.
But, if you use this option in either 1.3, 2.x, or 3.x
then quotes must be used.
OPTIONS
NOLINE
This suppresses the newline which Echo automatically
adds at the end of its argument. This is useful in that
it allows you to build a single line of text using the
output of two or more commands.
FIRST
This option takes a numeric argument, which indicates
which character position to begin output at. Any
character before FIRST will not be displayed. This is
useful with LEN (see below).
LEN
This option takes a numeric argument, which indicates
how many characters to output. If you also supply a
FIRST argument (see above), character output will begin
with that character, for LEN characters. If LEN is used
without the FIRST keyword, then the final LEN characters
will be displayed.
EXAMPLES
1. To display "Hello World" on the terminal.
Echo "Hello World!"
2. To advance the printer paper, and displays Hello
World! on the printer. Note that you must have set your
escape character to \ for this example to work.
Echo >PRT: "\FHello World!"
3. To display "ello World!".
Echo First 2 "Hello World!"
4. To display "rld!".
Echo Len 4 "Hello World!"
5. To display "World!".
Echo First 7 Len 6 "Hello World!"
6. To print the text file Ram:This.text to your
screen.
Echo Ram:This.text
ø
Ed (1.3, 2.x, 3.x located in C:)
SYNOPSIS
The Amiga's built in full-screen text editor.
Ed is a complete text editor. Due to the huge scope
of the available commands you should consult your Amiga
System manual on how to exactly use Ed.
If enough people contact me to include a full
tutorial in DOSMan, I will write one.
FORMAT
1.3:
ED FROM (name) [SIZE (numchars)]
2.x/3.x:
ED [FROM] name] [SIZE numchars] [WITH comfile]
[TABS interval] [WINDOW device] [WIDTH columns]
[HEIGHT rows]
KEYWORDS
FROM
This is the name of the file you wish to edit.
If the file does not exist, Ed will create it. This keyword
is optional as long as it is the first arguement in the
Ed statement.
SIZE
This sets the size of the buffer which ED uses. If
this is the second arguement in the command line, then
the keyword is optional, you only need to type the number.
SIZE defaults to 40,000 bytes. If your buffer is not big
enough to hold the file you are editing, then you will
get a warning message informing you of this from Ed.
WITH
2.x/3.x Only: This lets you make an Ed command file
to execute automatically. This is a command file that
contains a list of extended instructions for Ed that
will execute when the file is run. This exists in the
form of a script. See your Amiga's manual on how to set
up this command script.
TABS
2.x/3.x Only: This lets you set how many spaces will
be skipped when you hit the Tab key. The default Tab is
three spaces.
WINDOW, WIDTH, HEIGHT
2.x/3.x Only: The combination of these three commands
would allow you to open Ed on a remote terminal. Window
lets you specify this device (for example, AUX:). The
Width and Height lets you set the demensions of the new
window.
2.x/3.x Only: You can also edit binary files, not just
plain ASCI text.
EXAMPLE
1. To edit a text file called ThisText in the
Work:TextFiles directory.
Ed Work:TextFiles/ThisText
2. To edit a really big file of 75,000 kbytes in the
Work:TextFiles
Ed Work:TextFiles/ReallyBig.txt SIZE 80000
EDIT (1.3, 2.x, 3.x) (Located in the C: Directory)
SYNOPSIS
An AmigaDOS line editor.
FORMAT
EDIT [FROM] fromname [TO] toname [WITH] withname
[VER] vername [OPT W chars or WIDTH chars] [OPT P lines
or PREVIOUS lines]
EXPLANATION
Unless you grew up with UNIX and really dig line
editors you should really try a different program (even
Ed) before you dive into Edit.
What does set Edit apart from Ed (and most other text
editors) is that it is able to edit binary files and it
can execute a predefined list of line editor commands.
Please note that starting with version 2 of Ed you
can do the same thing, so there is really no need to keep
both of these programs hanging around on your system
disk.
KEYWORDS
FROM
EDIT requires the FROM keyword. This will tell EDIT
which file to edit. This filename must exist. EDIT will
not create the file for you like Ed will.
TO
This will tell edit where to save the file to once
you decide to finish. If this is the second command in
your arguement, you do not need the TO keyword.
EDIT is limited in the fact that it will not
overwrite a file that already exists. If the TO filename
is the same as the FROM filename then instead of
overwriting the FROM filename it will be save the
original as :t/edit.backup. The file you are working on
then gets named and saved as the FROM filename.
WITH
This specifies a file which will be used as input to
EDIT's command options. The contents of WITH must be a
series of valid options for it to work. If WITH is the
third argument in an EDIT command line, the keyword is
optional. If you don't use this keyword you must manually
input your parameters.
Due to the huge scope of available commands you
should consult your Amiga System manual on how to
configure EDIT.
If there is enough of an interest I will write a full
tutorial on how to configure EDIT.
VER
This lets you specify where to send the output of
EDIT to. You can send the output to any logical device
including PRT: to print it.
OPT W or WIDTH
OPT P or PREVIOUS
This lets you set the actual physical size of EDIT.
WIDTH lets you set the actual line length. PREVIOUS lets
you designate how many lines will be kept in EDIT's
history buffer.
The default for line length is 120 characters and the
default history buffer is 40 lines. If you multiply the
WIDTH by the PREVIOUS you will get the exact amount of
RAM you need to reserve as a work buffer. This amount can
be set with the STACK command.
If you set the OPT W and OPT P options, you must use
the OPT keyword with the W or P letters.
EXAMPLES
1. To edit a file called MyText in the default
directory:
EDIT MyText
2. To edit a file called MyText and to save it under
a file called YourText that is 5000 lines long:
EDIT FROM MyText TO YourText OPT P5000
3. To edit a file called MyText and to use the editor
commands located in the edit.prefs file (which you
created earlier). The data will then be saved as
YourText. And, to send all the messages and verifications
from EDIT to your printer while setting the number of
lines to 50 and a line width as 175:
EDIT FROM MyText TO YourText WITH edit.prefs VER
PRT: OPT W175 OPT P50
See also:
STACK
Else (1.3 in C:) (2.x/3.x internal)
NAME
Else - FALSE clause of IF conditional.
SYNOPSIS
Else
DESCRIPTION
Else is used in combination with IF to perform
conditional testing. If the IF conditional fails,
control will be passed to the commands following the
ELSE. If the IF conditional succeeds, then the commands
following the ELSE (up to the concluding ENDIF) will be
skipped.
Note that Workbench 2.x and above contains a builtin
version of this command. The 1.3 of Else cannot be
executed outside of a script, while the 2.x/3.x version
of Else can be executed inside or out of a script file.
SEE ALSO
IF ENDIF Execute
EndCLI (V1.3 in C:) (2.x/3.x internal)
NAME
EndCLI - Terminate a CLI or Shell.
SYNOPSIS
EndCLI
DESCRIPTION
EndCLI causes a shell process to terminate. The
shell will shutdown, freeing all of its resources and
closing its window (if it is interactive).
Note that if another program is still using the
console for a CLI, you may not be able to close a console
CLI window even after running ENDCLI until you terminate
that command. This is most likely to occur if you have
"RUN" some command from the CLI and it is still executing
when you try to EndCLI.
2.x/3.x Shell contains this command as a builtin.
Also, you can press the CTRL-\ or click on the close
button to exit your shell.
SEE ALSO
NewCLI NewSHELL
EndIf(V1.3 in C:) (v 2.x/3.x internal)
NAME
EndIf - Show end of IF ELSE Conditional.
SYNOPSIS
EndIf
DESCRIPTION
This is used to mark the end of a conditional block
in a script. Note that in 2.x/3.x this command is
builtin.
If the tested condition proves false then all
commands after ELSE and before ENDIF are executed. If the
tested condition is true, then all commands after the IF
and before the ELSE keywords are executed.
SEE ALSO
IF ELSE Execute
ENDSHELL (1.3: Alias) (2.x/3.x Internal)
NAME
ENDSHELL - Exactly like ENDCLI except it can close
the CLI or Shell window.
SYNOPSIS
ENDSHELL
DESCRIPTION
This terminates the CLI or Shell window just like the
ENDCLI command does.
Under 1.3 this command does not actually exist. It
is created in the startup-sequence with the Alias
command. But, it acts exactly like ENDCLI.
SEE ALSO
ENDCLI
EndSkip(V1.3 in C:) (2.x/3.x internal)
NAME
EndSkip - Unconditionally abort a SKIP in progress.
SYNOPSIS
EndSkip
DESCRIPTION
If EndSkip is encountered after executing a Skip
command in a Script, the Skip will be aborted, and the
fail level will be set to WARN.
Note that in 2.x and 3.x this command is builtin.
SEE ALSO
Execute Skip Lab
Eval(V1.3, 2.x, and 3.x in C:)
NAME
Eval - evaluate arithmetic and logical expressions.
SYNOPSIS
Eval Value1/a Op Value2 TO/k L=LFORMAT/k
DESCRIPTION
Eval computes the results of simple arithmetic and
logical expressions as applied to two arguments, and
displays the result on its standard output. Numeric
arguments may be input as:
Decimal
This is the default, no extra qualifiers needed.
Hexadecimal
Enter hexadecimal numbers as 0x<number> or
#x<number>, for example: 0x1A or #x1A.
Octal
Enter octal numbers as 0<number> or #<number>, for
example: 0777 or #777.
Binary
Binary numbers (in ARP eval only) may be entered with
#B, for example: B1111
Character
Characters are supported only by the Commodore Eval.
The operations supported are given below:
addition + not ~
subtraction - left shift <<
multiplication * right shift >>
division / negation -
mod mod exclusive or xor
and & bitwise equivalence eqv
or |
Any fractional amounts that result from this process
are discarded.
OPTIONS
TO
You can send the output of Eval to a file which is
indicated in the path with this keyword.
L=LFORMAT
You can control the output format of Eval using this
keyword.
There are four formats you specify: hexadecimal (%X)
Octal (%O), Decimal (%N), or ASCII (%C). The hex and
octal formats require a number after the letter to
indicate how many letters you want to print. For
example, to display a hexadecimal number in a field of 8,
you can do LFORMAT="%08lx". You can also include escape
characters (such as *n for a newline) inside your LFORMAT
string. For this release of Eval, you also need to
always use the 'l' (for long) format character with all
format commands. The default is set to Decimal.
You can also include any text you desire in the
format string by using quotes. For example:
LFORMAT = "There are %N widgets sold."
EXAMPLE
1. To find the sum of 2 + 2 and print the answer as 2
octal digits followed by a new line character.
EVAL 2 + 2 LFORMAT = "%O2*N"
Execute(V1.3, 2.x, and 3.x in C:)
NAME
Execute - Cause the shell to execute commands from a
file.
SYNOPSIS
Execute [Filename] [ARGS...]
DESCRIPTION
Execute causes the shell or CLI to read the commands
from the filename specified as Execute's input argument.
When the end of the file is reached, control returns to
the keyboard. You can force the Shell to abort any
script file processing by typing a C-d (Control D)
sequence while the script is being executed.
You can even include nest an Execute inside your
script to cause one script to call another one during its
execution.
In AmigaDOS 1.3 and above, you can execute a script
without typing EXECUTE and just typing name of the script
if the 'S' bit is set.
KEYWORDS
FILENAME
The name of the script to execute.
ARGS
Any arguments to be passed to the file. These may be
any valid AmigaDOS string (including filenames and all
sorts of devices.
DIRECTIVES
Execute recognizes several special commands known as
Directives. Each of these Directives begins with a DOT
'.', but this character can be redefined if needed.
Execute is reasonably flexible in allowing you to
redefine its special characters, which is quite
fortunate, as you will soon see.
In order for Execute to recognize these directives,
the DOT character must be placed at the beginning of the
line, and the directive name must follow immediately,
with no intervening whitespace. You can also use the DOT
(again, at the beginning of a line only) to introduce a
comment. This usage is ".<whitespace>Anything" where
whitespace is any of space, tab or newline.
Many of these directives deal with passing arguments
to scripts and establishing defaults for arguments.
These are described below:
.KEY and PARAMETERS
The .KEY directive (which may be abbreviated as .K)
is used to declare the names of parameters which will be
used in the course of the script file. Note that these
are not environment variables. If you intend to pass
arguments to a script file, it is wise to use this
directive as the first line of a file. If the first
non-empty line (i.e., a line which contains anything
other than a newline) does not contain a dot command
(directive), then the arguments will not be processed.
The .KEY directive accepts any legal template. These
are the same kinds of templates you see all the time in
the AmigaDOS commands. Note that currently, there is no
support for multiargs (the /... template type) in
scripts, and so you should not use this in your
templates. All the usual processing associated with
templates is active in scripts, including the '?' display
of the template, and position independent arguments.
When you use the .KEY directive, Execute matches up
the users arguments with your template keywords, and if
no error occurred, scans the file for any items
surrounded with the BRA KET characters. These are
initially '<' and '>', which is quite unfortunate, since
these tend to conflict with the IO redirection operators.
It is wise to change these to another character using the
.BRA and .KET operators (see below).
When a BRAKET sequence is encountered, Execute
replaces the keyword inside the BRAKET with the users
argument. If the user did not enter an argument for that
keyword, and there is no default setting for this
keyword, then Execute removes the argument all together,
resulting in a NULL string. Arguments that do not take
an argument, for example, switches (template type /S),
are handled somewhat differently. If the user supplied
the switch on the command line, then the braket sequence
is replaced by the actual name of the switch, otherwise,
it is null.
DEFAULT VALUES FOR PARAMETERS
This assigns the value string to all occurrences of
the substitution argument described below.
You can set default values for your variables in two
ways. The first way is to use the .DEFAULT directive.
.DEFAULT (which may be abbreviated as .DEF) takes a
template keyword and a default value. If that keyword
does not have a value at the time the .DEFAULT statement
is scanned, then Execute binds the value to that keyword.
Here is an example of its use:
.DEFAULT Foobar "Testing123"
Another way to set default values is by using the
DOLLAR (initially each time the parameter is used, it
does not set it permanently:
Echo "<Foobar$Testing123>"
Note that a .DEFAULT statement will override all
following DOLLAR defaults. The decision as to which to
use is usually based on how many times you use that
parameter. If you only use it once, then either will do.
If you use it many times, then .DEFAULT is probably the
simplest. Also note that there is not a conflict between
this use of the DOLLAR and the use of the dollar during
Shell environment expansion: The DOLLAR is special to
Execute only inside of BRAKETS, and the shell expands the
environment variables only after Execute has parsed the
file. Unless you use environment variables inside of
BRAKETs, there should be no need to change your .DOLLAR
character.
You can also use a double DOLLAR inside of brackets.
This will be replaced by the current CLI number.
CHANGING THE META CHARACTERS
The following directives are used to change the
default meta characters used by Execute. Each take a
single character as their argument.
.BRA and .KET
These change the bracket characters (initially '<'
and '>', respectively) to something else. It is highly
recommended you make a habit of doing this, whether you
think you need to or not. Good characters to use instead
are the curly braces ('{' '}') since these are not needed
for anything else, currently.
.DOT
This changes the DOT character (initially '.').
.DOL or .DOLLAR
This changes the DOLLAR character (initially '$').
MISCELLANEOUS
Execute may be nested, i.e., you may include Execute
commands in scripts, which can also contain Execute
commands.
Execute will sometimes need to write a temporary
file. If you have assigned a directory or device to T:,
then this location will be used. If not, and there is a
:T directory for the current directory, then Execute will
create the assignment, and use this directory.
Otherwise, it will attempt to create both the directory
and the assignment in the current directory. EXECUTE uses
<$$> with the task number of the CLI from which it is run
to create this.
EXAMPLES
1. To execute a script named RunThis located on Df0:
EXECUTE df0:RunThis
2. Here is an example of a KEY directive which
contains a switch. This illustrates a good way to handle
and use /s style arguments in script files.
.KEY MySwitch/s
IF "<MySwitch>" EQ "MySwitch"
Echo "The switch is on!"
ELSE
Echo "The switch is off!"
ENDIF
If the user doesn't supply MySwitch as an argument on the
command line, then the comparison will fail (the first
argument will be ""), otherwise, the comparison will succeed
(the switch is "on").
SEE ALSO
If Skip Failat Lab Echo Quit
Failat(V1.3 in C:) (2.x, 3.x internal)
NAME
Failat - To set a fail level for a batch file.
SYNOPSIS
Failat RCLim
DESCRIPTION
When using Execute to run scripts, any command that
returns an error greater than the current value of the
Fail level will cause the shell to abort the script with
an error message. You can use Failat to increase or
decrease this level to whatever you need. The shell will
reset the Fail level (usually 5, 10, 20 but can be any
number) at the end of every script execution, so scripts
always start out in a known state.
Under 2.x/3.x the result code is stored int the
environment variable RC, which is represented by $rc. The
bigger the return code, the bigger the error. If the
severity of the error is higher than the number you set
then the script stops running.
Once your FAILAT has been run in the script, the
FAILAT level returns to 10.
You can use FAILAT to a very high number and test the
return codes that any of your IF statements return.
EXAMPLE
1. To temporarily set the failure level to 30
Failat 30
This now makes it possible to execute commands that return
error codes greater than 20, which would ordinarily cause
Execute to stop with an error message.
2. To display the current failure level threshold.
Failat
Fault(V1.3 in C:) (V2.x/3.x internal)
NAME
Fault - translate numeric error codes to ascii text.
SYNOPSIS
Fault Fault/...
DESCRIPTION
Normally when your Amiga has an error it returns a
requestor telling you what you need to do. Many errors do
not bother to open up this requestor, only a number (for
example, 'Last command failed with error 330). This
command accepts numeric those error codes and turns them
into system error messages, or if the error code is not
defined the numeric code is again displayed.
Translates all the faults into English-lanuage
explanations.
The CLI and Shells (and many programs) call on Fault
to report their errors for them.
In 2.x/3.x this fault code is stored into the
variable 'result 2'.
The AmigaDOS command also does this but may not root
out the exact problem. If the AmigaDOS command WHY does
not satisfy your quiriosity of what the error was about,
then using Fault directly after it will expound on it.
EXAMPLE
1. To display the error message associated with fault
code 220:
FAULT 220
2. To display the error messages with fault codes
216, 220, and 330:
FAULT 216 220 330
FF (ONLY in 1.3) (DOES NOT exist in 2.x/3.x)
SYNOPSIS
FF - Speeds up the text display.
FORMAT
FF [-O] [-N] [fontname]
EXPLANATION
This only exists in 1.3 because 2.x/3.x have fast
text routines that are inherit with those systems. If you
are using a standard 8x8 or 10x9 font FF will speed up
the display of the text on 1.3 machines.
Not only that, but you can use FF to replace the
format system font as long as it is of the proper size
and is fixed width. 2.x/3.x uses the Font Prefrences in
the Prefrences drawer to perform this same task.
KEYWORDS
-O
This tells FF to speed up the text. It is on by
default.
-N
This tells FF to turn off the fast text routines and
can be turned back on by reissuing the command.
[fontname]
This tells FF to replace the system default fonts
(TOPAZ80 and TOPAZ60). The font you use to replace it
must have the NewFont.font file as well a drawer which is
associated with that font file containing the data for 8
or 9 size fonts, or both.
If you designate a font that does not have those
files available, the default Topaz fonts will be used.
EXAMPLES
1. To turn on fast text routines:
FF
or
FF -O
2. To turn on fast text routines while replacing the
system fonts with the Neat.font:
FF Neat.font
Filenote(V1.3, 2.x, 3.x in C:)
NAME
Filenote - Sets a comment for a file.
SYNOPSIS
Filenote [File]filename Comment
DESCRIPTION
You can set a comment for a file of up to 79
characters using this command. You can also remove the
comment for a file using this command by specifying a
null comment string. Comments may be viewed with the
list command.
When you COPY a file, the note does not get copied
with it. When you RENAME a file, the note stays attached
to that file. If you change the file in any way, except
COPYing it, the file note does not get effected. If you
add another filenote to a a file that already has one,
then the old one gets deleted and the new one replaces
it.
If you LIST a directory, these filenotes are
displayed. The notes will appear right below the file
name with a : in front of it. If there is an icon
attached to that file, then you can read or a note
through that icon's information window.
These filenotes do not effect the file they are
attached to in anyway what so ever.
KEYWORDS
FILE filename
This is the file the note is to be attached to. If this is
the first argument in the command string then the FILE keyword is
optional.
1.3 only: Only one file can be annotated at a time.
2.x/3.x only: Wildcards are completely acceptable.
You can also annotate as many files as you like at the
same time.
COMMENT string
If this is the second argument in the command string then the
COMMENT keyword is optional. This defines the note that is to be
attached to it. The string must be enclosed in quotation.
ALL
2.x/3.x only: Lets you add the same note to all the files in
the specified directory and all its subdirectories.
QUIET
2.x/3.x only: Does not list the files as the notes are being
added.
EXAMPLE
1. To attach a note that says "Here it is!" to your
file ThisFile
Filenote FILE ThisFile COMMENT "Here it is!"
2. To attach a note that says "Don't delete this no
matter what!" to the File Important.text
Filenote Important.text "Don't delete this no matter what!"
SEE ALSO
Copy List
FORMAT (1.3, 2.x, 3.x in SYS:System)
NAME
Format- Initializes a disk as being blank.
SYNOPSIS
FORMAT DRIVE drivename NAME string NOICONS QUICK FFS
DESCRIPTION
FORMAT takes a disk and initialises it to make it
empty. You can also specify a name for it, but it you
don't it will name it 'empty.
WARNING: All information on the disk will be erased
while using this command.
After typing FORMAT, you are prompted to insert a
disk and hit the RETURN key. After you hit RETURN you
cannot turn back. It can be interrupted by hitting the
CTRL-C and then RETURN. But, some data will be lost.
As the format occurs, the status of the format is
displayed. Each cylinder number (0-79 for a double
density floppy) clicks by on the screen until every
cylinder is initialized then verified. After this entire
process the volume name is assigned.
If you are copying one disk to another DISKCOPY is a
much faster command. This is because you must first
FORMAT, then INSTALL, then COPY ALL the from between the
disks. If you are using DISKCOPY all these steps are
performed by the DISKCOPY command.
The only time the FORMAT-COPY ALL routine is better
than the DISKCOPY is when the information on the source
disk have been deleted and rewritten so many times that
the contents of the disk have become scattered. By
formating the disk then copying all the files over, you
are consolidating them. By consolidating them you will
greatly speed up your disk accessing time. The only time
DISKCOPY will be better on a scattered disk is if you
optimize the disk first using one of the many optimizing
programs available.
KEYWORDS
DRIVE drivename
The drive which contains the disk to be formatted.
The valid entries are df0: df1: df2: and df3:.
FORMAT can be used on any logical device. These
devices include harddrives, recoverable ram drives, or
even removable media which is readable/writeable.
WARNING: Make sure you are typing the write device
name. By typing DH0: instead of DF0: my cause you lose
the entire contents of your harddrive when you just
wanted to format a floppy disk.
NAME string
This is the name you are giving to the disk you are
formatting. The NAME keyword is absolutly mandatory. The
NAME can be up to 31 characters long and if it contains
spaces must be contained in quotes.
NOICONS
With this keyword prevents the Trashcan from getting
created during the format process.
QUICK
This keyword makes FORMAT initialize only write over
the root-block, the boot block, and the bitmap block,
without formating the rest of the disk. This is good to
do whenever you are formatting a disk that already has
been formated before because it is many times faster.
But, this keyword will not work if the disk has never
been formatted before.
FFS
This keyword forces the disk to be formatted with the
Fast File System (FFS). FFS lets you keept much more
information on the disk than the OFS (Old File System).
WB 1.3 cannot boot from FFS and may have trouble reading
them. 2.x/3.x use this by default.
EXAMPLES
1. To format a disk in Df1: and naming it My_Disk:
FORMAT DRIVE df1: NAME My_Disk:
GET (2.x/3.x Only) (Internal Command)
NAME
GET - Shows the contents of a local environment
variable.
SYNOPSIS
GET varname
DESCRIPTION
A named text string that is stored in an environment
space is a local environment variable. It can only be
accessed through the shell it was created in or from a
shell that was spawned from the shell it was created in.
OK... so what's the difference between GET and
SETENV. Well, SETENV is stored in the RAM disk and is
global to all system functions. GET resides in some
private (reserved) memory that may only be accessed as
described above.
By placing a dollar sign before the name, you can
swap the value of a local environment variable on the
command line. In other words, if you type 'ECHO $Peter'
you are creating the same local environment variable as
GET Peter.
KEYWORDS
varname
This is the name of the environment variable to get.
There are many local environment variables which are
already created by the 2.x/3.x operating systems. The
proper use of these makes AmigaDOS a very flexible and
powerful scripting language. The more important and
useful of these variables are:
Process
The process number of the current Shell
Echo
Decides whether or not the Shell will repeat each of
the commands as they are executed. If 'SET Echo on', then
the commands are repeated and displayed. Anyother use of
Echo will not allow any commands to be repeated. Turning
Echo on helps you to debug any scripts that you are
having problems with, since there is no other way to tell
how they failed. With Echo on, you can tell which line in
the script failed to work.
RC
The return code of the last command that was
executed. You can manipulate this return code instead of
using IF WARN or IF FAIL commands structures. This is a
more efficient programming algorythm routine.
Result2
The error number of why the last command failed. You
can use the FAULT and/or WHY commands to try to figure
out the exact nature of the error.
EXAMPLES
1. To print the contents of an environment variable
named StupidMahedi:
GET StupidMahedi
GetEnv(V1.3, 2.x, 3.x)
NAME
GetEnv - display value of environment variable.
SYNOPSIS
GetEnv Name
DESCRIPTION
GetEnv displays the values of Environment variables.
These variables are accessible to all tasks (unlike GET
which is only accessible to the environment which created
it).
GetEnv searches both the older Environment variables
and the new ENV: handler if it exists. (Note that ENV:
is currently just a directory in RAM:, it is not a true
handler).
GetEnv prints the contents of this file.
KEYWORDS
varname
The name of the environmental variable to get. This
is the name of the file that is found in the ENV:
direrectory located in RAM:.
Kickstart/Workbench
2.x/3.x Only:
These are created during startup. They contain the
version of your Kickstart and Workbench that is currently
being used by your system.
Editor
2.x/3.x Only:
Some Workbench programs such as MORE are able to
recognize the environmental variables. If you set this
variable to the pathname of your favorite text editor,
then MORE allows you to bring up the program to edit the
current file by pressing Shift-E.
SEE ALSO
Set Get
IF(V1.3 in C:) (2.x/3.x Internal)
NAME
IF - Add intelligent branching to scripts.
SYNOPSIS
IF NOT WARN ERROR FAIL string1EQstring2
string1GTstring2 string1GEstring2 VAL EXISTS
DESCRIPTION
If the condition tested by IF evaluates to TRUE, then
the commands immediately following the IF, up to the
following ELSE or ENDIF, are executed. If the condition
tested by IF evaluates to FALSE, it moves the execution
of the file ahead to the command following the next ELSE
command (if there is one), or to ENDIF, if there is no
intervening ELSE.
The ELSE command (if used) must show up between the
IF and ENDIF statements.
CONDITIONS
Each of the following will evaluate to true or false:
WARN
This will be true if the return code value set by the
last command is greater than or equal to 5.
ERROR
This will be true if the return code value set by the
last command is greater than or equal to 10.
FAIL
This will be true if the return code value set by the
last command is greater than or equal to 20. Note that
you will have to use a Failat command to raise the
default fail limit from 10 to above 20 if you wish to use
this test.
string1EQstring2
This takes two strings, and will be true if both
arguments are the same (i.e., EQUAL). The default is a
string comparison, but see VAL, below. The comparison is
not case sensitive. The test can be reversed by using the
NOT keyword with it. It can be a numberic comparison if
you utilize the VAR keyword. Strings 1 & 2 are normally
text, if there are spaces in the strings then quotes must
be placed around it.
Environmental variables may also substitute a string
by using a dollar sign ($) directly before the the
variable name (so, $Amount represents the variable
Amount).
string1GEstring2
Takes two arguments. This will be true if the first
argument is Greater than or Equal to the second argument.
This may be combined with NOT (see below) to perform a LT
(less than) test. The default comparison is a string
compare, use VAL to compare numbers. Strings 1 & 2 are
normally text, if there are spaces in the strings then
quotes must be placed around it.
Environmental variables may also substitute a string
by using a dollar sign ($) directly before the the
variable name (so, $Amount represents the variable
Amount).
string1GTstring2
Takes two arguments. This will be true if the first
argument is Greater than the second. This may be
combined with NOT (see below) to construct a LE (less
than or equal to) test. The default comparison is a
string compare, but use VAL to compare numbers. Case
sensitivity does not matter. Strings 1 & 2 are normally
text, if there are spaces in the strings then quotes must
be placed around it.
Environmental variables may also substitute a string
by using a dollar sign ($) directly before the the
variable name (so, $Amount represents the variable
Amount).
EXISTS
This takes one argument, which should be a device,
file or directory. This will be TRUE if the device, file
or directory exists.
MODIFIERS
The following options to IF modify the meaning of the
above tests:
NOT
Inverts the sense of the test. This is always used
in combination with another keyword. As an example, the
line: "If NOT EQ" will be TRUE if the EQ is false. This
modifier combines with any of the others.
VAL
This affects the type of compare done by the EQ GT
and GE keywords. By default, the comparison is a string
compare. However, if you specify this keyword, the
comparison performed is numeric.
If you don't use the VAL keyword then the string will
be compared one numeral at a time from left to right.
For instance the string 22 will be shown to be greater
than 011 since the first character is 0 in the second
string which is smaller than 2 in the first.
OTHER
2.x/3.x contains this command is internal. The only
other difference between the 1.3 & 2.x/3.x version is
that the 2.x/3.x version can be executed directly from
the command line, while the diskbased version cannot.
EXAMPLE
1. If you are running Workbench 3.0, the CLI will say
"An Execellent decsion. If you are running any other OS
then you get a message saying "Why not?"
IF EXISTS Workbench3.0
Echo "An excellent decision!"
ELSE
Echo "Why not?"
ENDIF
SEE ALSO
Execute Assign
Info(V1.3, 2.x, 3.x in C:)
NAME
Info - report information about mounted file
system(s).
SYNOPSIS
Info NAME DATES
DESCRIPTION
This command displays important and useful
information about each disk unit. INFO displays what disk
volumes are in use and the amount of strorage they have.
INFO also will display the name of all the disks
residing in any physical disk drive. This is helpful if
you in helping you remember what volumes are mounted
where. You also get a list of available volumes is also
listed (those mounted and unmounted).
The 3 1/2 inch disk has 880k of space available to
them. After you format it under OFS (Old File System) you
only have 837k left. If you use FFS (Fast File System)
you have a full 879k to use. If you are fortunate enough
to have a high density drive, then you can use 1759k of
disk space.
The entire disk format is stored in sectors. There
are 1758 usable sectors on the Amiga disk. OFS's divide
each sector into 488 bytes whereas FFS has a full 512
bytes per sector. High Density disks use 3518 bytes per
sector. INFO will report the number of sectors already
used on the disk and how many are available for use. RAM:
is dynamic. That means, it will always be reported as
100% full (even if it is empty) and will expand as needed
until it is full.
INFO will also report if there are any 'soft' errors
on your disk. So, what is a soft error? Well, it is a
temporary error. For example, an error reading
information from a disk. If the system cannot read the
information off the disk, it will retry a couple times.
If all reads fail then you have a hard error. If one of
your reads is successful then the original read that
failed is flagged as a soft error.
It also reports whether or not disk disk is write
protected. If it is listed as 'Read Only' then your write
protection tab is set. If it is listed as 'Read/Write'
then it can be written to as well as read. The RAM: disk
cannot be protected from reading or writing, but the
files you put in there can be protected from deletion
with the use of the PROTECT command.
KEYWORDS
NAME
This keyword lets you get the information of one
particular device without getting all the info for
everything else.
EXAMPLES
1. To show the information regarding the disk volumes
known to the filing system:
INFO
2. To print out the information regarding the disk
volumes known to the filing system:
INFO > PRT:
3. To show only the information pertaining to df1:
INFO df1:
Install(V1.3, 2.x, 3.x in C:)
NAME
Install - Do the magic which makes a disk bootable.
SYNOPSIS
Install Drive NOBOOT CHECK
DESCRIPTION
This command should be used on all formatted floppy
disks that you might wish to startup the system with.
INSTALL adds the minimum amount of information to
make that disk bootable. If a blank disk is INSTALLed it
will bring up the AmigaDOS prompt, but that's it. To
invoke any AmigaDOS commands the entire path to that file
must be included.
If you boot with the INSTALLed disk, it becomes the
Sys: directory.
If you use INSTALL on a non-Amiga formatted disk, or
one with a custom boot-block, you will probably destroy
that disk. So, be careful how you use this command.
The drive specified may be one of DF0:, DF1:, DF2: or
DF3:.
OPTIONS
CHECK
This option checks to see if a disk is bootable, and
if standard bootblock code is installed on the disk. For
use in script files, if the disk is bootable and contains
standard bootblock code, the error code is set to zero,
otherwise, the error code is set to WARN.
NOBOOT
This option removes any bootblock from a DOS disk,
and may also be used to make a non-DOS diskette readable
as a DOS diskette. This can be used to get rid of
unwanted information (aka Virus's) that may be hanging
out on your diskette.
FFS
The disk will usually be given the boot block
associated with that particular file system (OFS- Old
File System for 1.3 or FFS- Fast File System for
2.x/3.x). This will force your system to install an FFS
disk in Workbenches under 2.1. After and including 2.1
you are unable to force an FFS disk on an OFS only
system.
SINGLE DISK DRIVE WARNING!!!
If you're not careful with your this program you can
ruin your Workbench disk. Here's how to INSTALL a disk on
a single drive system.
You will not be prompted to enter the disk after you
type INSTALL. So, this makes using INSTALL on single disk
systems very dangerous. Normally, your C: directory will
be assigned to the Sys: disk in df0:. So, if you insert
the Workbench disk in df0: then type INSTALL ?, you will
then get a command template that looks like this:
DRIVE/A. Now, eject your Workbench disk then put in the
one you wish to install and then type DF0: after the
template then return. Now, the disk you wanted to install
will be installed.
EXAMPLES
1. To install a boot file on the disk in df2:
INSTALL DRIVE df2:
IPREFS (ONLY in 2.x/3.x) (located in C: directory)
NAME
IPREFS - Managages the Preferences scheme in 2.x/3.x.
SYNOPSIS
IPREFS QUIT
DESCRIPTION
This command will read all the preference settings in
the ENV:Sys directory and puts those settings into
effect. IPREFS hangs out in memory and looks out for
changes made to the preference settings.
For IPREFS updating functions to work you must have
all the windows of any process running closed that have
opened up on the Workbench. You willknow if you have
something open when you try to reset a Preference setting
and get a message saying: 'Intuition is attempting to
reset the Workbench screen. Please close all windows
except drawers.' If you get this during bootup then you
probably entered a command in the startup-sequence before
IPREFS was run. This is a good reason why you should not
alter your startup-sequence and make any extra programs
run from your user-startup script. But, if you absolutly
must enter a command before IPREFS, then run its output
to NIL:. So, to run 'NeatProgram Keywords Arguments'
before IPREFS, then you should enter it as 'NeatProgram
>NIL: Keywords Arguments'.
KEYWORDS
QUIT
Under 2.x only: This lets you quit IPREFS while not
keeping all the Prefrences intact. This keeps anything
from changing the preferences as they are updated. This
was removed under 3.x.
NOTE: IPREFS is started during system startup. If you
try to run it again you will get an error message saying
that you already have it runnig and that you can't run it
again.
Join(V1.3, 2.x, 3.x in C:)
NAME
Join - Combines (joins) many files into one larger
file.
SYNOPSIS
Join name1 name2.... AS or TO destname
DESCRIPTION
This program combines several files into one larger
file, which may also be a device such as a printer or
modem. It accepts wildcards as its arguments. Wildcards
are only supported under 2.x/3.x. 1.3 MUST have more than
one name.
This command will alphabetize the wildcarded
filenames before using them. If you specify only one
name, then a simple Copy will result. Any number of files
may be specified in the command line, and each one may be
a wildcard specification.
KEYWORDS
name1 name2...
These are the files you will combine. Under 1.3 you
must place at least two names here, with a space between
each name (up to 15).
AS or TO
This is the name of the new file into which the
contents of the other files are placed. This can be a new
file or an old file, but it can't be any of the files
which precede the AS or TO keyword.
ADDITIONAL CONSIDERATIONS
You may prefer to use TYPE for joining files rath
than JOIN. JOIN is included for backward's compatibility
with batch scripts. The one advantage of Join is that it
runs a bit faster than TYPE concatenating large files.
EXAMPLE
1. To combine the three files File1 File2 and File3
into one large file named FILES1-3. Note that the
original files are unharmed.
Join File1 File2 File3 AS FILES1-3
Lab(V1.3 in C:) (2.x, 3.x in C:)
NAME
Lab - Define a label for Skip.
SYNOPSIS
Lab label_name
DESCRIPTION
Lab is used to define a label for use with skip. Lab
by itself defines a null label. Note that if an EndSkip
is encountered by Skip before the Label Skip is searching
for is found, the search will be aborted at that point.
EXAMPLE
1. In this example, only "But this will" will display
on the CLI. Just type this script out and run it to see
exactly how it works:
Skip DODAH
Echo "This will not display"
Lab DODAH
Echo "But this will"
SEE ALSO
Skip EndSkip
CAUTION
With the V1.3 version of SKIP, you should NOT
indent a LAB statement or that label will not be found.
List(V1.3, 2.x, 3.x in C:)
NAME
List - List contents of a directory.
SYNOPSIS
List listname Dir P=PAT/k KEYS/s DATES/s NODATES/s SUB/k
SINCE/k SORT/s TO/k UPTO/k QUICK/s BLOCK=BLOCKS/s
NOHEAD/s FILES/s DIRS/s LFORMAT/k
DESCRIPTION
List displays the contents of a given directory. By
contents, we mean the names of the subordinate files and
directories, not the file data. Typing the List command
by itself with no parameters generates a listing of the
current directory. It also lists any comments attached by
a FILENOTE command.
THE LISTING DISPLAY
List displays your files and directories one per
line, with all the protection flags currently turned on
right next to the filename. The fields which may appear
in a Listed file are
name [KEY] size/type protection date time
:comment
Methods are provided for getting a selective listing
of files, as well as suppressing/adding most of the above
display elements.
A description of each one of the above elements is
given below:
Name
The name of the file or directory. This can be a
device or volume name. AmigaDOS wildcards are supported
100%. The inclusion of wildcards eliminates the need for
the P (or PAT) keyword. PAT is retained to keep
compatiblility with older versions of AmigaDOS.
KEY
This is the actual block number of the file or
directory block header. This is not displayed by
default, you must use the KEYS switch to generate this
element of the listing.
size/type
This element gives the size of the file in bytes, or
the string "empty" if the file is empty. If this is a
directory and not a file, then the directory indicator
("Dir") will appear here.
protection
The protection bits of the current file, in the order
hsparwed. If any of these is disabled, a dash (-) will
appear in its place. The protection bits stand for
"hidden, script, pure, archived, read, write, execute and
delete", respectively.
date time
The date and time of the last modification to the
file or directory. The format of the date display is
determined by the value of the environment variable
dateformat. These elements of the listing appear by
default, but may be selectively added or subtracted by
using the DATES or NODATES keywords.
comment
The comment as set by Filenote. If no comment
exists, this field will not be displayed. Note that it
is displayed on a line by itself, preceded by a colon.
SELECTIVE LISTING OF FILES
The methods described in this section allow you to
list a portion of the files and directories on your
disks. Ways exist to generate a list of files that
conform to a certain pattern, or that were
created/modified before or after a certain date. You may
also combine these options, for example, you may get a
list of all files which end in .c and were created or
modified since a certain date. These options are
described below:
Dir
List this directory instead of the current directory.
This parameter may be a filename, in which case the
single file is shown. You may also use any legal
AmigaDos pattern in this position, in which case the
files and directories listed will be those which match
the pattern, if any. (This feature was added to the BCPL
List in the V1.3 enhancer.)
PAT
List only files and directories which match the
pattern. You must specify the keyword PAT or its
abbreviation P. This is no longer truly necessary with
the expanded capabilities of AmigaDOS wildcards, since it
is usually more convenient to simply include the pattern
in the directory specification as described above. It is
included for BCPL compatibility.
SUB
In this option the SUB keyword must come before the
string. If spaces are in the string, it must be enclosed
in quotes. With the inclusion of AmigaDOS wildcards, this
keyword is really not needed. It searches for an
occurence of the substring anywhere within the directory
name or filename. Think of this as a short form of "List
PAT *substring*" or a long form of "List *substring*".
List will reject any attempts to combine the use of PAT
and S. Wildcards in the initial DIR argument are matched
and then checked again to match against the substring.
SINCE
While the pattern matching options above filter files
and directories on the basis of their names, this option,
and the following UPTO option, filter out files based on
their last modification date. SINCE displays only files
which have been created or modified on or later than the
specified date. All older files are not displayed. You
may specify the date in the currently defined dateformat
(see Environment Variables) or you may use a word such as
SUNDAY, TODAY, YESTERDAY, etc.
UPTO
The inverse of SINCE, this option displays only files
and directories which have been modified or created on or
before the specified date. Files younger than this date
are not displayed. See SINCE for a description of the
date format list expects.
FILES
Display only files, and not the directories.
DIRS
Display only directories, and not the files.
CONTROLLING THE DISPLAY
The options below allow you to alter the format of
the display listing, or to send it to another file or
output display device (that's usually a printer).
TO
You can specify a file or a device you wish the
listing to be sent to using this keyword. If not
specified, the default of the current screen will be
used. If the file already exists then the old file will
be replaced (and gone forever) while being replaced with
this new file. If the protection bit is set on the old
file LIST will not work. It is very useful to LIST TO
prt: to get a hard copy of your disk listing.
DATES
Forces the date and time of creation to be displayed
in the current dateformat. This keyword does not have to
be used unless you are using the QUICK or NODATES
keywords.
NODATES
Will not display time and date information, only the
filename, size, protection and comment fields will be
displayed. Using DATES with this will force the creation
dates and times to display.
QUICK
Displays only the filename field, one filename per
line, with no trailing spaces. You can LIST just the
files or direcotries by using the FILES or DIR options.
You can combine this with other options such as DATES and
KEYS to selectively enable these fields. Under 2.x/3.x
KEYS no longer works with this keyword.
KEYS
Displays the block number of each file header or
directory header. All files are assigned using block
numbers. This is how AmigaDOS keeps track of your files.
Each file has a unique block number assigned to it. This
is its address on the disk. The block number appears to
the left of the file length.
SORT
Sorts the file and directory names into ascending
alphabetical order. Case is disregarded. Note that this
is an option available only with the ARP list. Sorts by
DATE if you include the DATES keyword.
BLOCK=BLOCKS
Displays filesizes in blocks, rather than bytes.
NOHEAD
Suppresses the default "Directory..." header and the
"x files -x directories -x blocks used" footer display.
LFORMAT
LFORMAT can be used to control the output of list,
and especially to generate command lines to be fed to the
shell. LFORMAT can is most useful when you want to
generate a script file. To send the LIST output to a
script file, you can either redirect LIST's output using
the ">" or "TO" keywords. LFORMAT takes a string as an
argument which can be any ascii string.
The LFORMAT substring can be used multiple times.
This allows you to use the listing name more than once
per line. The second time you use the string the first
relative path will be replaced by %S, and the path of the
second argument will be used (BTW, a relative path is
merely the list of directories you must traverse to get
from the specified directory to the current one.) If you
use three substrings, then the first will be replaced by
the relative path, while the second and third will be the
file or subdirectory names. If you use it four times, the
first and third will be the relative paths, and the
second and fourth will be the subdirectory or file names.
To include the output of List in this string, you can
use the "%S" sequence under 1.3 or 2.x/3.x as follows:
"%S" Filename
"%S%S" Pathname/Filename
"%S%S%S" Pathname/FilenamePathname
"%S%S%S%S" Pathname/FilenamePathname/Filename
The following information may be substituted for the
string as output and is for 2.x/3.x Only:
%A :Attributes (protection flags)
%B :Size of file in blocks
%C :Comments attached to the file
%D :Date of file creation or last update
%F :The complete absolute path (starting with the
volume name)
%K :Key block number
%L :Length of the file in bytes
%N :Name of the file
%P :The relative path(starting at the current directory)
%T :Time of creation or last update
The following information may be substituted for the
string as output and is for 2.1/3.x Only:
%E :Extension only (the part of the filename after the
last period)
%M :Filename minus the extension (everything up to
the last period)
ALL :Lists the contents of all the subdirectories of the
specified directory, as well as the directory itself.
The %S's may be separated by spaces, other ascii text
or nothing, as above. Here is an example of LFORMAT that
will create a script to Type each file:
List LFORMAT="Type %S%S"
Of course, to use this, you must save it in a file
using TO or one of the IO Redirection operators ('>',
'>>'). If you are using 2.x/3.x, you can also pipe the
output of List directly into the Execute command.
ENVIRONMENT VARIABLES
The List uses the same dateformat variable as used by
the Date command, and in essentially the same way. If it
is not defined, or if it has an illegal value, the
default AmigaDOS display and input is used. Otherwise,
the display and the input of dates is determined as
follows:
0 AmigaDOS format DD-MMM-YY.
1 International format YY-MM-DD.
2 U.S. format MM-DD-YY.
3 Canada DD-MM-YY
If you prefix the above numbers with a dash, then the
display of names like TODAY, MONDAY, FUTURE, etc., will
be disabled and the format string as defined above will
be used exclusively. Note that this governs the format
that List expects as input as well as the format List
uses for display.
EXAMPLES
1. To display all files in df1: ending with the
characters "#?.c" which were modified later than TUESDAY
at 00:00 hours.
List df1:#?.c SINCE WEDNESDAY
2. To output just the names and dates for items in
the current directory beginning with the letters 'stuff'
that were created or last updated on or before April 16,
1967. Sent the output out to a file called 'StuffOut' in
the Ram:T directory.
LIST stuff#? QUICK DATES UPTO 16-Nov-67 TO Ram:T/StuffOut
3. To list the information about the contents of the
current CLI directory.
LIST
4. To print the block number of all the files in the
current directory.
LIST KEYS to PRT:
or
LIST > PRT: KEYS
5. To display the information about the files in the
directory art/adult whose names contain the string
'girls'
LIST art/adult/#?girls#?
(note: Information about both 'Really Ugly Girls' and
PrettyGirls would be displayed)
6. To set the pure bit of every file in the stuff:
directory.
LIST >RAM:ThisFile stuff:#? LFORMAT "protect %S +p"
(now you have a file called Ram:ThisFile which contains
the commands to set the PROTECT bit on all the files in the
stuff: directory. Now, just EXECUTE RAM:ThisFile
LoadLib(V1.3 only)
NAME
LoadLib -- Explicitly load an Amiga library.
SYNOPSIS
LoadLib dev:dir/library-name
DESCRIPTION
THIS COMMAND IS NOT NEEDED BY 2.x/3.x.
UNDER 1.3 ONLY: This is a new command which is
occasionally very useful. If you should happen to boot
from a disk that does not have arp.library in its libs
directory you will not be able to use the ARP commands
directly. This is an unusual situation, but it can
happen. LoadLib presents the solution to this problem by
allowing you to load the library directly from whatever
directory you want. After a successful LoadLib of
arp.library, you may use any ARP command you like.
Note that you are not confined to loading
arp.library, any diskloadable library may be brought into
memory in this way, this can help a lot when your
bootdisk gets too crowded.
EXAMPLE
1. To boot from a disk without arp.library on it, and
then insert your boot disk in drive 1, then type:
LoadLib df1:libs/arp.library
This will allow you to execute any ARP command. Note
that LoadLib cannot use arp.library, and therefore it is
missing some features, such as the advanced argument
parsing, that most ARP supplied commands have.
OTHER
This command was donated to ARP by William Hawes. The
founder of AREXX.ø
LoadWB (V1.3, 2.X, 3.X in C:)
NAME
LoadWb -- To start the the WorkBench.
SYNOPSIS
1.x:
LoadWB DELAY -DEBUG
2.x/3.X:
LoadWB DELAY -DEBUG CLEANUP NEWPATH
DESCRIPTION
Normally it is found in your statup-sequence so that
your Workbench will be loaded when you start your Amiga.
The Workbench will set and keep track of all search paths
in effect as well as set the paths for each CLI or Shell
started from a Workbench icon.
Under 1.x the Workbench will reinitialize whenever
you issue the LoadWB command. Under 2.x/3.x the Workbench
is reinit- ialized after selecting 'Update All' from the
Workbench menu. If you run LoadWB after it was already
loaded under 2.x/3.x then you will get an error message
saying that the Workbench is already loaded.
KEYWORDS
DELAY
This makes a three second pause before the program is
loaded. This lets all the disk activity to stop before
going onto the next program in your startup-sequence to
start. If there is not a pause, then both commands will
try to access the floppy disk, this causes your floppy
drive to make a thrashing noise and slows down you disk
access tremendously.
-DEBUG
This adds a brand new menu item to your Workbench bar
which is not normally displayed. There are two items on
this menu. Debug (called ROMWack on 2.x/3.x) and
Flushlibs. Debug (ROMWack) loads the ROMWACK debugger.
This is a developer's tool which communicates to your
Amiga via a 9600-baud terminal connection to the serial
port. If this terminal is not connected, your Amiga will
appear to lock up, since nothing will work until the
remote terminal sends commands. Flushlibs lets the
Workbench flush out all the libraries from memory that
are not in use. This frees up a good deal of resources.
This is useful for the programmer to check if his program
exited cleanly and freed all memory that they allocated.
1.x ONLY: DELAY or -DEBUG may be used, but not at the
same time.
CLEANUP
2.x/3.x Only: This performs a 'CleanUp' of the
Workbench window, making all your icons all neat and
orderly. This may also be done via the Window/CleanUp
while having the Workbench screen activated.
NEWPATH
2.x/3.x Only: This lets you change the path that the
Workbench uses. The Workbench usually remembers the CLI
or Shell path that issued the LoadWB command. This path
is automatically assigned to any Shell or CLI started
from an icon. This path can be changed by using the
NEWPATH keyword. The Workbench will then use the path
associated with the Shell window from which the command
was issued.
EXAMPLES
1. Load the Workbench and close the CLI:
LOADWB DELAY
ENDCLI >NIL:
2. Load the Workbench with the DEBUG menu activated:
LOADWB -DEBUG
3. Add the SYS:File directory to the path that the
Workbench assigns to new Shell windows opened from icon:
PATH SYS:File ADD
LOADWB NEWPATH
LOCK (1.X, 2.X, 3.X located in C:)
NAME
LOCK - Enables or disables the write protection of a
harddrive partition formatted under the Fast File System
(FFS).
SYNOPSIS
LOCK drive ON/OFF PASSWORD
DESCRIPTION
1.x only lets you enable or disable the write
protection of a FFS. 2.x/3.x it also enables or disables
the write protection of every kind of disk including
floppies. The drive is unlocked only when another LOCK
command is sent or reboot the computer.
KEYWORDS
DRIVE
The name of the disk or partition. For 1.x, it can
only be a hard drive formatted with the FFS. 2.x/3.x lets
you LOCK floppy disks too. LOCK works a little
differently on floppies than other commands. Normally,
when a command is set onto a floppy drive (eg. df0:) it
will only effect that particular disk. But, with LOCK, it
effects any and every disk inserted into the drive.
ON/OFF
This keyword lets you protect the disk (LOCK ON) or
write enable (LOCK OFF). The default is for the disk to
be write enabled.
PASSWORD
Under 1.2, this password had to be four characters
long. On Operating Systems 1.3 and above it can be of any
length.The password is considered to be a text string.
Therefor, if there are spaces in it, it must be enclosed
in quotes. If a a password was included in the LOCK ON
command, the same password keyword must be used in the
LOCK OFF command for the disk to be write enabled.
EXAMPLES
1.To protect harddrive partition Dh1: with a password
of saturn:
LOCK DH1: ON saturn
2. To turn off the same:
LOCK DH1: OFF saturn
or
LOCK DH1: saturn
MAGTAPE (2.x/3.x Only) (Located in C:)
NAME
MAGTAPE [DEVICE devicename] [UNIT unitname] [RET or
RETENSION] [REW or REWIND] [SKIP numfiles]
SYNOPSIS
MAGTAPE was added in 2.x to specifically control the
A3070 tape backup unit. Computer tape drives are
sequential. In other words, All computer tape drives,
like video or audio tapes, must be manually "fast
forward" or "rewind" to get to a particular file.
Random-access devices such as floppy drives, harddrives,
CDRoms, etc directly acess the information.
KEYWORDS
DEVICE devicename
The devicename of unit to manipulate.
UNIT unitname
By default, MAGTAPE accesses SCSI unit four and
utilizes the Commodore scsi.device. This is used because
it is the factory defaults of the A3070. To change the
SCSI unit number of the tape drive, or use a controlling
device other than the scsi.device, you must specify both
the device name of the SCSI controller (eg gvpscsi.device)
as well as the unit number of the tape drive using both the
DEVICE and UNIT keywords. There are usually dip switches
in your unit that can be changed to correspond to any unit
number you like. If you are unsure of the SCSI device driver
your unit uses, then you should call the manufacturer. All
SCSI drivers end in the extension: .device.
RET or RETENSION
This re-tensions the tape by fast-forwarding to the end
then rewinding it.
REW or REWIND
Runs the tape to the beginning.
SKIP numfiles
Unit will run forward past a given number of files.
The variable 'numfiles' tells how many files to skip.
EXAMPLE
1. To rewind a scsi tapedrive attached to a GVP
controller whose unit number is set to two:
MAGTAPE DEVICE gvpscsi.device UNIT 2 REW
MakeDir(V1.3, 2.x, 3.x in C:)
NAME
MakeDir - Create any number of directories.
SYNOPSIS
MakeDir Dir/...
DESCRIPTION
MakeDir creates a new directory with the name you
give. There is no limit to the number of directories you
may create with this command. The directories will be
created in the order in which you supply them. Note that
you cannot duplicate directories at the same level of the
directory tree, nor can you create a subdirectory until
its parent directory has been created.
MakeDir allows you to create multi-tiered filing
systems on the same disk volume. To delete the
directories, you will use the DELETE command.
EXAMPLE
1. To make a directory named Jim:
makedir Jim
2. To make a directory named Mailbag inside the Jim
directory and the directories Jan and Feb which will
reside in the Mailbag directory of Jim that you just
created with the first part of the template.
makedir Jim/Mailbag Jim/MailBag/Jan Jim/MailBag/Feb
MAKELINK (2.x and 3.x only) (located in C:)
NAME
MakeLink - Creates links which point to other files.
SYNOPSIS
MakeLink [FROM fromname] [TO toname] [HARD] [FORCE]
DESCRIPTION
When a program asks for a file, they will get the
file linked to instead of that file itself. These links
are handy whenever you have different programs who want
to reference the same file in several different
directories. Let's say you like to read your docs with
ppmore. Well, many icons are configured to use More, Much
More, Multiview, or any other text viewer. Well, to use
your favorite reader (ppmore) you can make links that
direct all other readers to access ppmore instead.
The only problem with MakeLink is that you cannot
make a link accross a devcice. Your link must reside on
the same volume or partition.
KEYWORDS
FROM fromname
The name of the link file to create. You only need to include
the FROM keyword if you have the fromname and toname reversed.
TO toname
The name of the file which will be linked to. This must be on
the same volume as fromname, and cannot be a directory name unless
you use the FORCE option is used.
HARD
An optional keyword is used to indicate that the link and its
target are on the same volume. A soft link is when the link is on
a different volume. This is currently not supported.
FORCE
This is to create a directory link. This is where the link file
will look for a particular directory instead of file. This is certain
to cause confusion within your file system, especially if the target
directory contains linked files. It will also cause havoc if you
create a link to the parent directory of a target of another link.
Even though MakeLink keeps you from making certain kinds of confusing
links, you should be extra cautious when FORCING a link.
EXAMPLES
1. To make a file run the program c:ppmore instead of
C:more or C:muchmore
MAKELINK c:ppmore c:more
MAKELINK c:ppmore c:muchmore
Mount(V1.3, 2.x, 3.x in C:)
NAME
Mount - Make a new device known to AmigaDOS.
SYNOPSIS
1.3:
MOUNT Dev [FROM filename] STARTPROC
2.x/3.x:
MOUNT Devs [FROM filename]
DESCRIPTION
When AmigaDOS starts up, only a few devices are known
to it. You can add new devices with the Mount command,
which are then used just like any standard device. The
devices might be actual hardware units, or they might be
logical devices, such as a SPEAK: device, or a PIPE:
device, or a buffered serial device SER:, or even a
non-buffered serial device such as AUX:. The Assign
command allows you to view or remove these added devices,
as well as the standard system devices.
Before using this command to Mount the device, you
will need to create an entry for it in a file (this is
referred to as a MountList entry). The details of doing
this vary from device to device, but there should be
documentation accompanying each device you intend to add
that describes exactly how to do this. Ordinarily, you
will make this entry in the file called DEVS:Mountlist on
your system, but the FROM keyword gives you the option to
specify another file to obtain the mountlist entry from.
The 1.3 disk has a sample Mountlist file in the Devs:
directory. This will form a good example of how to
structure any mountlists you write.
The size of the device is determined by the Surface,
LowCyl, HighCyl, and BlocksPerTrack entries. Merely
multiply these values together to get the available
storage. For example, if you had a device with a
Surface=2 (double sided), LowCyl= 0 and HighCyl=39 (40
tracks per side: 39 - 0 + 1), and with a
BlocksPerTrack=11 (11 sectors, each sector being 512
bytes) you would end up with a 440k drive (.5k X 2 X 11 X
40= 440K).
For non-memory devices such as SPEAK:, AUX:, SER:, or
PIPE: the list simply shows where to find the handler. A
handler is a program similar to a device driver.
The CLI commands FORMAT and DISKCOPY work with all
similar mounted devices. For instance, you can FORMAT or
DISKCOPY between two 3.5 inch drives and two 5.25 inch
drives, but not DISKCOPY between a 5.25-inch drive to a
3.5-inch drive. If you try, you will get an "Object Not
Of Required Type" message.
The MOUNT command looks for this Mountlist in the
DEVS: directory. This file is a text file that shares
some of the characteristics of the C programming
language. For instance, hexadecimal numbers must start
with the characters 0x. Semicolons must seperate multiple
descriptions on a line. Comments must appear like in all
AmigaDOS script comments, that is beginning with /* and
ending with */. The Mountlist must end with the pound
sign (ei #).
2.X/3.X Only:
There is a completely new and user-friendly way to
handle devices! There is a new drawer in your Workbench
called "DOSDrivers" inside your DEVS: directory. These
files are different from old mountlists in three ways: 1)
They don't end in a pound sign, 2) They contain only one
device name per file, and 3) the device name of the file
is not specified in the list. To mount the device, you
simply drag it into the DOSDrivers drawer and it will be
mounted automatically when the Workbench is loaded. If
you don't want the mountlist loaded automatically at
startup, then simply place the mountlist in the
DOSDrivers drawer of the Storage directory.
KEYWORDS FOUND IN THE MOUNT LIST
Handler=
The name of the device handler file. Found in you l
or devs directory of your workbench.
EHandler=
2.x/3.x only: The name of the environment handler
file found in your prefs/env-arc directory of your
workbench.
FileSystem=
The name of the file system file. Usually found in
your Devs or l directory of your Workbench.
Device=
The name of your device driver file found in the Devs
drawer of your workbench. You can also specify a path to
another device location if you to locate the driver in
another drawer.
Priority=
The task priority of the process; 5 is typical of
handlers, 10 is typical of file systems.
Unit=
The unit number of the device (ei 0 for df0: and 1
for df1:).
Flags=
Flags setting for the OpenDevice call (usually 0).
Surfaces=
Number of write surfaces.
BlocksPerTrack:
The number of disk blocks (eg sectors) per track (eg
cylinder).
Reserved=
The number of blocks used for the boot block; 2 is
the standard here.
PreAlloc=
The number of blocks reserved at the end of a
partition; used with a few IBM-style (yuk!) hard drives.
This is usually 0.
Interleave=
This value controls the AmigaDOS interleave, not the
physical hard drive interleave.
LowCyl=
Starting cylinder to use for this device.
HighCyl=
Ending cylinder for this device. Total number of
cylinders= HighCyl - LowCyl +1.
StackSize=
The amount of working memory to allocate to the
process.
Buffers=
Number of cache buffers to use with the device.
BufMem Type=
Type of memory to use for cache buffers. Values are
as follows:
0 or 1 = Any
2 or 3 = CHIP
4 or 5 = FAST
Mount=
If this value is positive, MOUNT loads the handler or
driver software as soon as the device is MOUNTed, rather
than the first time the device is accessed. 2.1/3.x
utilizes the word ACTIVE as a synonym for this keyword.
MaxTransfer=
The maximum number of blocks transfered at one time;
used with the Fast File System only.
Mask=
Address mask that specifies the memory range that can
be used for DMA transfers; used only with the Fast File
System.
GlobVec=
If the handler is written in BCPL, it needs a global
vecotr. A value of 0 sets up a private global vector;
anything else indicates that the handler is written in C
or assembly language, and no global vector is needed. If
this keyword isn't used, the shared AmigaDOS global
vector is used.
Startup=
A string passed to the handler, device, or file
system on startup. This string is passed as a BPTR to a
BSTR.
BootPri=
The boot priority of a bootable device, expressed as
a number between -129 and 127. A value of -129 indicates
that the device is not bootable, as is appropriate for
use with the recoverable RAM disk if you don't want to
boot from that device on reset.
DosType=
Indicates the format of the file system used. If the
Fast File System is used, this value should be set to
0x444F5301 (DOS/1). Other types introduced in 2.1 include
0x444F5302 (DOS/2), an international version of the old
file system that allows mixed-case accented characters in
filenames, and 0x444F5303 (DOS/3), an international
version of the Fast File System.
Baud=
Serial device speed (in bits per second).
Control=
Serial device control parameters- word length,
parity, and stop bits (eg 8N1, 7E1).
ForceLoad=
A new 2.1 option. When this value is 0 (default), the
system will check the resource list to see if the file
system named in the entry has already been loaded. If it
has, the system will use that one, instead of loading a
new one.
Under 1.3 you can only MOUNT one device at a time
with one MOUNT command.
The 2.x/3.x version of Mount allows you to mount any
number of devices with one Mount command, which can speed
up the startup-sequence somewhat.
OPTIONS
FROM
This takes one argument, which should be a filename.
This filename will be used to obtain the Mountlist entry
for the device you are adding. If this keyword is not
used, the file DEVS:Mountlist will be used instead.
STARTPROC
Ordinarily, a mounted device will have its handler
loaded when it is first accessed, not when mounted. This
switch allows you to override the default action, which
will load the handler at Mount time. Reasons for doing
this could include having a few handlers on an alternate
disk that you don't want to keep in a drive for the
duration of your session.
MOUNT KEYWORDS
DEV
The actual AmigaDOS device name, such as DF2:, DH0:,
or SER:. This refers to either a hardware device like a
disk drive or serial port, or a logical device such as a
RAD or harddrive partition. The keyword must be the same
as the label given in the Mountlist entry. The device
mounted should also be available to the system.
In 1.3 you can only specify one device per command.
Under 2.x/3.x you can specify multiple devices with one
command call. Wildcards may be used when specifying
multiple devices.
FROM
Lets you specify a file other than DEVS:Mounlist as
the place to look for the description of the device being
MOUNTed.
EXAMPLE
1. Assuming you have a mountlist for a device named
FRANKIE:
Mount FRANKIE:
CAUTIONS
Please note the following two differences between the
V2.x/3.x Mount and the Commodore V1.3 Mount, which can
cause problems in some cases if you are not aware of the
differences.
If you want to reboot from RAD: using the 2.x/3.x
Mount, you must insert an explicit "BOOTPRI = 0"
statement into the mountlist entry for RAD:, as compared
with the Commodore Mount which automatically will reboot
from RAD:.
If you have a "MASK = nnnnn" statement in your
mountlist, MAKE SURE THE MASK VALUE IS AN EVEN NUMBER.
The 1.3 Mount automatically converts the mask value to an
even value, but the 2.x/3.x Mount will pass through an
odd value which can cause problems. You will probably
only have a "MASK=nnnnnn" statement if you have memory
that cannot be accessed by a DMA device, such as with a
RONIN 68020 card.
EnD Of PaRt OnE